git命令行

git status看当前状态

git status -s 当前状态用缩短版。

git clean -fd 全部强制clean

git checkout .   放弃本地修改

git checkout -- CONTRIBUTING.md 表示撤销对CONTRIBUTING.md文件 的修改 比较危险,慎重使用,因为会把这个文件revert掉

git pull origin yourbranch

$ git commit --amend上次提交的有的东西漏提了,可以用这个
$ git commit -m 'initial commit'
$ git add forgotten_file
$ git commit --amend
最终你只会有一个提交——第二次提交将代替第一次提交的结果。
$ git reset HEAD CONTRIBUTING.md   这个文件在修改列表后,取消暂存
git commit -am "modified Cheatsheet.html"   add和commit

忽略文件
创建忽略文件:
$cat .gitignore
*.[oa]
*~
第一行告诉git忽略所有以.a或.o结尾的文件。
第二行告诉Git忽略所有以波浪符结尾的文件。
*.a 忽略.a文件; !lib.a不忽略lib.a /TOdo 忽略当前文件夹下的Todo,而不是子文件夹; build/ 忽略在build/文件夹下的所有文件
doc/*.txt 忽略doc/note.txt,而不忽略doc/server/arch.txt
doc/**/*.pdf 忽略所有.pdf在doc/directory下

查看已暂存和未暂存的修改

git log看log
git branch 分支名 创建新分支

git checkout -b feature/profiler_shao 从当前分支拷贝一份工作分支到新的分支

如果本地分支在远程没有建立分支,那么你无法提交到远程,报错

error: src refspec feature/profiler_my does not match any.
error: failed to push some refs to 'https://gitlab.gaeamobile-inc.net/Snowstorm/ tec'

git push --set-upstream origin profiler_my 在远程建立分支并提交到远端

$ git push origin --delete profiler_my删除远程分支

git clean -df清除

git checkout .

git checkout -f把本地编译生成的都删了

git clean -df  把添加的都删了

git branch -a查看所有分支

git branch -d 分支名  删除分支

git branch -D 分支名  即使有修改,也删除分支

git branch -r -d origin/profiler_shao  删除本地到远端的track

git reset HEAD 文件名   将add的文件取消add

git add 文件夹名    将该文件夹下的文件都暂存。

sourceTree贮藏,应用贮藏。

mac上,windows键+t新开一个console窗口。

git pull 显示error:pull is not possible because you have unmerged files.  Fatal:exiting because of unresolved conflict.  有冲突

这时,git clean -df

git checkout .

git checkout 当前分支名          出现:自动merge的文件,冲突, 自动merge失败,解决冲突然后提交

这时,要解决冲突,将pull下来的变化,commit一下

git commit -m "merge"

然后提交到远端,git push origin release/v1.0.0.1




https://git-scm.com/book/zh/v2/Git-%E5%9F%BA%E7%A1%80-%E6%92%A4%E6%B6%88%E6%93%8D%E4%BD%9C
原文地址:https://www.cnblogs.com/Shaojunping/p/12329199.html