创建版本库
git add加入到暂存区
git commit -m" "加入到分支
时光机穿梭
git satus查看仓库的当前状态
git diff file 查看修改内容
版本回退
HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id。
穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。
要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。
管理修改
提交后,用git diff HEAD -- readme.txt命令可以查看工作区和版本库里面最新版本的区别:
撤销修改
git checkout -- file可以丢弃工作区的修改:
git reset HEAD file可以把暂存区的修改撤销掉(unstage),重新放回工作区
删除文件
Git知道你删除了文件,因此,工作区和版本库就不一致了
现在你有两个选择,一是确实要从版本库中删除该文件,那就用命令git rm删掉,并且git commit:
现在,文件就从版本库中被删除了。
另一种情况是删错了,因为版本库里还有呢,所以可以很轻松地把误删的文件恢复到最新版本:
$ git checkout -- test.txt
更新到远程库
git push origin master
克隆到本地
$ git clone https://github.com/csydouble/gitskills.git
Git鼓励大量使用分支:
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>
标签管理
,tag就是一个让人容易记住的有意义的名字,它跟某个commit绑在一起
创建标签
命令
git tag <name>
用于新建一个标签,默认为HEAD
,也可以指定一个commit id;git tag -a <tagname> -m "blablabla..."
可以指定标签信息;git tag -s <tagname> -m "blablabla..."
可以用PGP签名标签;命令
git tag
可以查看所有标签。
操作标签
命令
git push origin <tagname>
可以推送一个本地标签;命令
git push origin --tags
可以推送全部未推送过的本地标签;命令
git tag -d <tagname>
可以删除一个本地标签;命令
git push origin :refs/tags/<tagname>
可以删除一个远程标签。