git 常用场景命令总结

425 阅读3分钟

一、将本地文件夹添加到Git仓库

1、(先进入项目文件夹)通过命令 git init 把这个目录变成git可以管理的仓库

git init

2、把文件添加到版本库中,使用命令 git add .添加到暂存区里面去,不要忘记后面的小数点“.”,意为添加文件夹下的所有文件

git add .

3、用命令 git commit告诉Git,把文件提交到仓库。引号内为提交说明

git commit -m 'first commit'

4、关联到远程库 git remote add origin 你的远程库地址 如:

git remote add origin github.com/XXXX/XX.git

5、获取远程库与本地同步合并(如果远程库不为空必须做这一步,否则后面的提交会失败)

git pull --rebase origin master

6、把本地库的内容推送到远程,使用 git push命令,实际上是把当前分支master推送到远程。执行此命令后会要求输入用户名、密码,验证通过后即开始上传。

git push -u origin master

状态查询命令

git status

git查看远程仓库地址命令

git remote -v

如果想要修改远程仓库地址:

git remote set-url origin '新的远程仓库地址'

然后再push:

git push origin master

二、git 全局设置用户名邮箱

1、查看git配置信息

git config --list

2、查看git用户名

git config user.name

3、查看邮箱配置

git config user.email

4、全局配置用户名

git config --global user.name "userName"

5、全局配置邮箱

git config --global user.email "eamil@XX.com"

三、git 创建分支并提交到远程

1.从已有的分支创建新的分支(如从master分支),创建一个dev分支

> git checkout -b dev
相当于
git branch dev
git checkout dev

2.创建完可以查看一下,分支已经切换到dev

> git branch
    * dev
    master

3.提交该分支到远程仓库

git push origin dev

4.测试从远程获取dev

git pull origin dev

5.设置git push,pull默认的提交获取分支,这样就很方便的使用git push 提交信息或git pull获取信息

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

6.取消对master的跟踪

git branch --unset-upstream master

6.现在随便修改一下工程文件的内容,然后git commit ,git push,之后就可以直接提交到远程的dev分支中,而不会是master Git鼓励大量使用分支:

查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>

四、git 合并分支

假如我们现在在dev分支上,刚开发完项目,执行了下列命令提交代码:

git  add .
git  commit -m '提交的备注信息'
git  push -u origin dev

想将dev分支合并到master分支,操作如下:

1、首先切换到master分支上
git  checkout master
2、如果是多人开发的话 需要把远程master上的代码pull下来
git pull origin master
//如果是自己一个开发就没有必要了,为了保险期间还是pull
3、然后我们把dev分支的代码合并到master上
git  merge dev
4、然后查看状态及执行提交命令
git status
如:
On branch master Your branch is ahead of 'origin/master' by 12 commits.
  (use "git push" to publish your local commits)
nothing to commit, working tree clean
//上面的意思就是你有12个commit,需要push到远程master上 
> 最后执行下面提交命令
git push origin master

五、git 清除远程仓库已经删除的本地分支

查看本地分支和追踪情况:

git remote show origin

可以发现远程分支已被删除的分支,根据提示可以使用 git remote prune 来同步删除这些分支

git remote prune origin

六、删除本地已经合并到master的分支

git branch --merged master | grep -v '^[ *]*master$' | xargs git branch -d

原理:
git branch --merged master 列出所有已经合并到master的分支
grep -v '^[ *]*master$' 在结果中排除master分支
xargs git branch -d 删除分支

其他命令

更新远程分支列表

git remote update origin --prune

查看所有分支

git branch -a

删除远程分支develop

git push origin --delete develop

删除本地分支 develop

git branch -d  develop

暂存代码

git stash

弹出暂存代码

git stash pop