Git 命令大全,赶紧拿小本本记起来

47 阅读1分钟

修改全局名称与邮箱

git config --global user.name "username"        全局用户名
git config --global user.email "email@xx.com"   全局邮箱

Git push 时如何避免出现 "Merge branch 'master' of

# 先pull
git pull --rebase
# 1.不冲突,会直接 rebase,不会产生分支合并操作,有冲突fix后
git push

commit is a merge but no -m option was given.

image.png

这时候如果执行git revert commitId 会提示如标题的错误。

对于revert merge的情况,程序员需要指出revert 这个merge commit中的哪一个。

通过-m或者--mainline参数,以及配合一个整数参数,git就知道到底要revert哪一个merge。

如果使用git revert HEAD~1 -m 1命令,也就是5f576a9,使用-m 2会revert第二个commit,也就是62db4af

例如执行:

git revert -n 3536724266dfd94*******50468d83305ee54da73 -m 1

上面的两个commitId在提交历史中也可以看到。

Git主干同步到分支

  1. 先切换到本地仓库,更新最新代码。
  2. 切换到要同步的分支
  3. 运行命令
git merge master
git push origin eyck

删除所有stash

git stash clear

默认不区分文件名大小写

当你创建一个文件后,叫 readme.md 写入内容后,提交到线上代码仓库,然后把首字母改成大写发现git status之后无变化 

# 当前git目录
git config core.ignorecase false
# 全局
git config --global core.ignorecase false

只跟踪指定的几个文件夹

假设只跟踪src,bin目录,做法如下
#编辑.gitignore文件(vim .gitignore)
#忽略所有文件,注意放在开头
/*
#除src文件夹外
!/src
#除bin文件夹外
!/bin 
#总的效果就是git只跟踪src和bin两个文件夹