git的常用命令总结

一、本地仓库

1、git init

创建git空仓库

2、git add

添加文件到暂存区

3、git commit -m "提交的描述"

提交暂存区的内容到工作区

4、git log    git log --pretty=oneline (格式化查看log日志)   

查看提交的日志

5、git reset --hard HEAD^      git reset --hard 提交的id

回退到上一个版本(工作区和版本库一起修改)

6、git reflog

如果回退到上个版本后悔了,可以继续使用这个reflog查看之前的版本在选择回退到哪个版本

7、git add命令实际上就是把要提交的所有修改放到暂存区(Stage),然后,执行git commit就可以一次性把暂存区的所有修改提交到分支

8、git diff HEAD --

查看工作区和版本库里面最新版本的区别

9、git checkout --

两种情况:

①:在工作区修改的内容还没有add到暂存区,执行后会回到与版本库中的一模一样的状态

②:已经把工作区的内容add到暂存区后,再次修改工作区的内容,执行后会保持已经添加到暂存区的状态

10、git reset HEAD

可以把暂存区的修改撤销掉(unstage),重新放回工作区。

11、git rm

删除工作区和暂缓区的文件

二、远程仓库

1、git remote add origin 地址

关联远程仓库

2、git push -u origin master

第一次把本地内容推送到远程仓库

3、git push origin maste

把本地master分支的最新修改推送至远程仓库(github)

4、 git clone 地址

如果想拷贝github上的项目用上面的命令(克隆下来以后只能看到master分支)

5、git remote

查看远程仓库信息(当你从远程仓库克隆时,实际上Git自动把本地的master分支和远程的master分支对应起来了,并且,远程仓库的默认名称是origin)

6、git remote -v

显示更详细的信息

7、git push origin <分支名>

这是分支的推送,可以把本地的分支推送到远程仓库中的分支

8、git checkout -b dev origin/dev

当你clone了一个项目之后是查看不到除了master以外的分支,所以需要用以上代码创建并切换分支

9、git branch --set-upstream-to=origin/dev dev

关联本地分支与远程分支,这样就能采取git pull命令拉取远程仓库的最新代码(可能会有冲突)

10、git pull(git pull origin dev)

拉取分支代码(在拉取之前可以用git diff进行查看,避免冲突)

三、分支管理

1、git checkout -b <分支名>

git checkout命令加上-b参数表示创建并切换,相当于以下两条命令:

$ git branch <分支名>

$ git checkout <分支名>

2、git branch

查看当前的分支

3、git checkout master

切换分支,工作区的内容也跟着一起切换。

4、git merge <分支名>

合并分支

5、git branch -d <分支名>

合并之后删除分支

6、git log --graph --pretty=oneline --abbrev-commit

分支有冲突时查看分支情况

7、git merge --no-ff -m "merge with no-ff" dev

分支管理策略:因为本次合并要创建一个新的commit,所以加上-m参数,把commit描述写进去。

合并分支时,加上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并。

8、git stash

保存当前分支的工作现场,可以去修改着急的bug分支

9、git stash list

查看有多少个stash

10、git stash pop

恢复工作现场同时把stash删除掉 (git stash apply 恢复,但是恢复后,stash内容并不删除,你需要用git stash drop来删除;)

11、git stash apply stash@{0}

可以有多次stash,恢复指定的stash

12、git branch -D <分支名>

开发新功能时需要新建个feature分支,强行删除分支上的内容。

三、标签

1、git tag

默认标签是打在最新提交的commit上的

2、git tag

查看所有标签

3、git tag commitid

指定commitid打标签

4、git show

显示对应标签上提交的信息

5、$ git tag -a -m "说明" commitid

创建带有说明的标签,用-a指定标签名,-m指定说明文字

标签总是和某个commit挂钩。如果这个commit既出现在master分支,又出现在dev分支,那么在这两个分支上都可以看到这个标签

6、git tag -d

删除标签

7、git push origin

推送到远程标签

8、git push origin --tags

一次性推送全部尚未推送到远程的本地标签

9、git tag -d

删除远程标签先删除一个本地标签,然后在删除远程标签

10、git push origin :refs/tags/

删除远程标签

你可能感兴趣的:(git的常用命令总结)