学习git版本管理工具

由于换了份工作,之前一直用SVN,现在需要用git,抽空学习一下。参照博客(https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000)在我的树莓派上练习一遍。git的由来就不重复了,分布式和集中的比较也不赘述。

1、安装

sudo apt-get install git

2、创建版本库

git init

3、添加文件与提交

git add filename

git commit -m "xxxx"

4、查看log记录

git log或者git log --pretty=oneline

5、回退版本

在git中,HEAD表示当前版本,上一版本表示HEAD^,上上版本表示HEAD^^,上100个版本表示HEAD~100

回退到上一个版本

git reset --hard HEAD^
也可以为
git reset --hard 3628164(数字表示commit id)

6、查看历史命令

git reflog

7、git两个重要的概念--工作区和暂存区

工作区:就是我们平时操作的目录

工作区有一个隐藏的文件夹叫.git,这个不算工作区,而是Git的版本库。

版本库存有很多重要的东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD

git add 的动作就是把工作区的文件添加到暂存区(stage),git commit 就是把暂存区的所有文件一次性提交到分支。

8、撤销修改

git checkout -- readme.txt 只会撤销工作区的修改,在已经add到暂存区的文件不会被撤销。

如果修改的东西已经被git add 到暂存区,如何回退呢?

用命令git reset HEAD file可以把暂存区的修改撤销掉(unstage),重新放回工作区。

小结

场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file

场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。

场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考回退版本一节,不过前提是没有推送到远程库。

9、删除一个版本文件

git rm

git commit 

 10、从远程仓库下载

git clone 

11、添加到远程仓库

要关联一个远程库,使用命令git remote add origin git@server-name:path/repo-name.git

关联后,使用命令git push -u origin master第一次推送master分支的所有内容;

此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改;

posted @ 2018-01-16 17:47  小蚂蚁_CYJ  阅读(173)  评论(0编辑  收藏  举报