Git使用记录 NO1
偶然听人说起用git来实现对软件项目版本的管理,就试着在网上搜素有关git的相关内容,在搜索过程中发现廖雪峰老师写的git教程比较有意思,就跟从这教程来学习git的使用。
下面就是我在学习过程中做的记录。(廖雪峰老师教程的链接地址:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000)
(第一次正儿八经的写个博客,语言组织的有点紊乱,优待改建!)
1、pwd:显示文件当前位置
2、登录方式: git config --global user.name "yourname"
git confi --global user.email"yourenami"
3、git init:初始化一个仓库
4、git add <filename>:将文件添加到仓库(成功时没有返回值),可反复添加多个文件,共同使用一个commit提交
5、git commit -m "wrote a readme file" //告诉git,把文件添加到仓库;--m 后面的内容为解释本次提交的内容
6、git status:可以让我们时刻掌握仓库当前的状态
7、git diff:查看文件发生改变的地方,即查看difference
8、修改一个文件后,添加文件提交
1)git add filename
2)git status //查看仓库当前的情况
3)git commit -m"add distributed"//将上传的文件提交到仓库
4)git status //再次查看仓库当前的状况
9、git log :显示从最近到最远的提交日志
当嫌弃git log 显示的内容太过繁琐时,可以通过git log --pretty=oneline简易的输出日志文件
例如:
$ git log --pretty=oneline
c5610211cfaee95e7af179e36bd5b483b031fc07 append GPL
516b112691bb451ac4d82e7be29eb832cd74d976 add distributed
fd73214ac5522213a7901f43238f0f6ba8527216 wrote a readme file
其中前面c5610211cfaee95e7af179e36bd5b483b031fc07内容是git commit(版本号),是有SHA1计算出来的一个非常大的数字,用十六进制表示
10、将仓库文件的版本退回到上一个版本:(git中HEAD表示当前版本,上一版本HEAD^,上上个版本HEAD^^,依次类推,上面添加^^^^^.... 当颠覆的版本跨度过大时,可以写成HEAD~100)
命令:git reset --hard HEAD^
11、退回到第二个版本后,又想回到再回到第三个版本,只要当时窗口没有关闭,就可以让胡汉三再回来!
方法:
git reset --hard c5610211cfaee95e7af //c5610211cfaee95e7af为第三个版本的部分commit版本
现在胡汉三就回来了!!!哈哈
10、当关闭电脑后又后悔退回到的版本时,可以采取的方式是:当你用$ git reset --hard HEAD^回退到add distributed版本时,再想恢复到append GPL,就必须找到append GPL的commit id。
Git提供了一个命令git reflog用来记录你的每一次命令
“穿梭前,用git log查看提交历史,以便确定要回退到那个版本”
“要重返未来,用git reflog查看命令历史,以便要确定回到未来的那个版本”