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
- 又如何是什么歌 又如何
- 如何安装马桶盖螺丝 如何安装马桶盖
- 如何排恶露快一些 如何排恶露
- 游戏如何打补丁 如何打补丁
- 如何避税企业所得税与增值税 如何避税
- 如何注册邮箱英文账号 如何注册qq邮箱
- 买房利息怎么算的 房子利息如何计算
- pdf如何删除其中一页 pdf如何
- 乡村如何振兴教育 乡村如何振兴
- 老公和妈妈有矛盾如何化解 矛盾如何化解