linux下git常用命令

时间:2021-02-08 16:26:10

1 安装:

sudo apt-get install git

2 创建一个版本库:

新建一个文件夹,进入这个目录之后

git init

3 创建一个版本:

git add 文件名或目录  #表示将当前文件的修改放入缓存区 先不提交
git commit -m '版本名称'    #将缓冲区提交建立一个版本

4 查看版本记录

geit log

每条一行查看版本信息

git log --pretty=oneline 

按图形方式查看 有合并版本的时候很清晰

git log --pretty=oneline --graph 

5 切换版本:

HEAD^表示上一个

HEAD^^表示上两个

HEAD~10 表示前面的第十个版本

git reset --hard HEAD^  #回跳一个版本
git reset --hard 版本号  #根据版本号跳转到指定的版本

6 查看操作记录

git reflog

7 查看当前工作树的状态(有哪些修改,缓冲区有哪些未提交)

git status

8 撤销修改

清空当前工作区的修改,如果缓冲区有数据,就恢复成缓冲区,如果没有就恢复成上一个提交的版本

git checkout --文件名称

清空缓冲区的内容放回到工作区

git reset HEAD 文件名

9 比较不同

git diff HEAD -- 文件名  #比较工作区和HEAD版本的不同(上次提交的版本)
git diff HEAD(版本1) HEAD^^(版本2) -- 文件名  #比较版本之间文件的区别

10 删除文件

git rm
git commit -m '版本名称'

11 分支

查看当前所有分支

git branch

创建一个分支并且使用它工作

git checkout -b 分支名称

快速合并到有新版本的另一个分支

git merge 分支名称

删除分支

git branch -d 名称

切换分支

git branch 分支名称

解决冲突

在分支1中 和分支2中分别对相同文件做了不同修改,当尝试进行分支合并的时候产生冲突

可以 在其中一个分支中编辑冲突文件,之后,再提交版本,

这时候相当于在当前分支合并了冲突文件 另一个分支没有变化

创建新版本合并,不适用快速合并:

不会合并到两一个版本,而是会合并后创建一个新的版本

git merge --no-ff -m '版本名称'

BUG分支:

在产生bug的分支 新建一个分支 进行修改,

然后修改好了再进行分支合并

最后把临时建立的bug分支删除

12 保存当前工作区(不想提交,下次还能继续工作区内容)

git stash

之后切换到其他分支,然后切换回来

恢复工作空间

git stash pop