如何github下载 如何git( 二 )

  
Git is a version control system.  
Git is free software.1234  
提交也是相当简单的啊,只需要两步(不查看状态的情况下)即可:  
root@firgavin-virtual-machine:~/learngit# git add readme.txt  
root@firgavin-virtual-machine:~/learngit# git commit -m "wrote a readme file"  
[master (根提交) 3b5aaff] wrote a readme file  
1 file changed, 2 insertions(+)  
create mode 100644 readme.txt  
这里呢,-m参数后面接的是本次提交说明,养成良好习惯每次都要写,而且要干练精简 。  
修改一下readme.txt如下:  
root@firgavin-virtual-machine:~/learngit# vi readme.txt  
root@firgavin-virtual-machine:~/learngit# cat readme.txt  
Git is a distributed version control system.  
Git is free software.  
12345  
使用git status查看当前仓库的具体状态:  
root@firgavin-virtual-machine:~/learngit# git status  
位于分支 master  
尚未暂存以备提交的变更:  
(使用 "git add 文件..." 更新要提交的内容)  
(使用 "git checkout -- 文件..." 丢弃工作区的改动)  
修改:readme.txt  
修改尚未加入提交(使用 "git add" 和/或 "git commit -a")  
显然我们修改了文件但是并没有提交,那么我们的文件还是处于工作区的,于是Git人性化地提示我们,到底是要提交呢,还是放弃提交呢 。不好确定就看一下修改内容吧:  
root@firgavin-virtual-machine:~/learngit# git diff  
diff --git a/readme.txt b/readme.txt  
index 46d49bf..9247db6 100644  
--- a/readme.txt  
+++ b/readme.txt  
@@ -1,2 +1,2 @@  
-Git is a version control system.  
+Git is a distributed version control system.  
Git is free software.  
很清晰的显示出改动的地方,不是么 。  
当然你确定修改的话就正常add然后commit,如果你要撤销修改的话,按照提示:  
root@firgavin-virtual-machine:~/learngit# git checkout -- readme.txt  
root@firgavin-virtual-machine:~/learngit# cat readme.txt  
Git is a version control system.  
Git is free software.  
root@firgavin-virtual-machine:~/learngit#  
123456  
命令git checkout – readme.txt意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:  
一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;  
一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态 。  
总之,就是让这个文件回到最近一次git commit或git add时的状态 。  
以上情况使用于你修改了工作区想直接丢弃工作区的修改,如果你修改了并且添加到了暂存区那么就要:  
root@firgavin-virtual-machine:~/learngit# git reset HEAD readme.txt  
重置后取消暂存的变更:  
Mreadme.txt  
root@firgavin-virtual-machine:~/learngit# git status  
位于分支 master  
尚未暂存以备提交的变更:  
(使用 "git add 文件..." 更新要提交的内容)  
(使用 "git checkout -- 文件..." 丢弃工作区的改动)  
修改:readme.txt  
修改尚未加入提交(使用 "git add" 和/或 "git commit -a")  
root@firgavin-virtual-machine:~/learngit#  
1234567891011121314  
这里需要优先使用git reset HEAD file取消暂存区的变更,查看状态发现变更此时位于工作区 。  
然后参考第一种git checkout – file就万事大吉 。  
如果不但将文件add了又commit了,那么久需要版本回退  
首先查看下当前有多少个版本:  
root@firgavin-virtual-machine:~/learngit# git log  
commit 7613ea2dd2a3b5333fb637b9c31fc74c6d4fa0c8  
Author: Xiaoming 3052355537@qq.com  
Date:Wed Aug 17 11:40:34 2016 +0800  
di 1 ci ciu gai  
commit 3b5aaff96463cad74ef7238a8324fc3298b7e748


特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。