我的Git学习

    “git?那是什么玩意儿?”一周之前,你要是这么问我什么是git?上面便是我的回答。

    在进入thoughtworks之前,对于git,我是一无所知。然而,胡老师的一堂课,向我开启了git的大门。而git,也开始进入了我的生活。

    后来,我特意查过git这个东西是怎么来的,原来呀,在早期的时候,linux系统虽然是开源的,但一直是由它的创始者Linux本人收集全世界热心志愿者的代码,自己手工整合上去的。可是随着Linux系统的日益壮大,仅仅靠一个人的力量,已经难以维持庞大的代码库管理了,而且社区的兄弟们也不满意啊,凭什么只由你一个人来管理!我们不服!!!迫于舆论的压力,Linus最终选择了一个商业的版本控制系统BitKeeper,BitKeeper的东家BitMover公司出于人道主义精神,授权Linux社区免费使用这个版本控制系统。

    本来是一派大好河山,大家一片和谐的使用,可是到了2005年,由于社区兄弟们牛人聚集,人才辈出,有些人就动了歪脑筋,开发Samba的Andrew试图破解BitKeeper的协议(这么干的其实也不只他一个),被BitMover公司发现了(监控工作做得不错!),于是BitMover公司怒了,要收回Linux社区的免费使用权。

    这可咋整?Linus带领众兄弟们给BitMover公司道个歉,低三下四的继续用?门都没有!Linus这么自恋,要他低头,可是太难了。不服输的他花了两周的时间,自己用C语言写了一个版本控制系统,这,就是赫赫有名的Git!什么叫牛逼,大家自己体会吧。

    Git就是这么横空出世了,如果不是当年BitMover公司收回了之前的系统使用权,也许我们现在就见不到Git了。谢谢BitMover。

    了解完了Git的来历后,我便开始真正的走入了Git的世界。Try-Git,这是老师给我们的第一个学习Git的网站,遗憾的是,英文网站-_-!跟着教程走了一遍,呃。。。学的一知半解的,直到老师给了我们中文版的网址,我才真正学会了Git的基本使用。那么接下来,就给大家分享一下我的学习Git的经验。

    在通过git config --global user.name "tom"      git config --global user.email tom@outlook.com两条用户配置以及git config --global core.editor atom配置好编辑器之后,就可以进行初步的Git操作了。

    首先,我们要做的,是初始化Git库,使用到的指令是git init。当我们输入这个指令之后,系统会在你的目录下创建一个.git的隐藏目录。然后,输入git status指令,我们可以查看当前Git的状态。

    此时,因为没有任何东西添加进去,所以显示的是没有任何东西,此时,我们可以往库里添加一点东西,用git add demo 命令,我们可以添加一个名叫demo的文件进去,只不过,此时的demo文件还只是在暂存区。接下来,我们可以使用git commit -m "my first commit" 来把文件提交到本地的Git库中,引号里面可以写一些关于这次版本变更的描述信息。提交上去之后,假如你想看看你之前都做了哪些修改,我们可以使用git log命令,来看我们的git日志。

    接下来,就是要把本地的git库里的东西添加到远程仓库了,我们可以用到这个指令: git remote add origin https://github.com.git,URL里面你可以写自己的GitHub地址。此时,push命令已经准备好要把commit推送到哪里了,让我们输入git push -u origin master这个命令吧。输入完成?现在点下回车,我们的demo文件,就被提交到GitHub上面供所有人使用了。

    要是过了一段时间,有一些人加入了我的GitHub工程,并对我的代码进行了修改提交,我们可以检查并拉取远程Git库中的更改,输入git pull origin master看一下吧。诶?他们都做了什么修改?我怎么知道呢?输入git diff HEAD ,你想了解的都有了。假如你想看看暂存区的改变,一样可以使用diff命令,让我们输入git diff --staged 来看一下喽。假如不想要暂存区里的东西的话,git reset 命令,可以帮我们解决困扰。想回到之前的状态吗?用git checkout -- <target>命令,熟悉的东西又回来了。

    现在,让我们来研究以下分支吧。假如我们正在研究一种功能,或者修复bug时,通常会创建一个分支,当完成后,再把这个分支合并到主分支上。git branch clean_up,可以帮助你创建一个分支。然后输入git checkout clean_up切换到这个分支上,并进行你想要的操作。接下来,输入git checkout master回到主分支。然后就是合并了,用git merge clean_up来合并他们吧。

    合体之后,原来的clean_up分支就可以不要了,输入git branch -d clean_up来删除吧。最后最后的最后,就是提交了。来吧,git push,将你的成果推送上去吧。

到此,今天的Git小课堂,就结束了,我也初步掌握了Git的一些基本的用法,接下来,就要勤加练习,灵活运用Git了。


转载于:https://my.oschina.net/u/2362038/blog/413980

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值