仅针对Mac/Linux命令行下git的使用。文件夹命名最好不要包含中文汉字
文件
添加文件(夹)到暂存区
git add <file|dir>
在每一行change被添加之前git会询问。适用于想add文件的一部分change的场合
git add -p
把文件恢复到上次提交时的样子。
git restore [file]
撤销添加文件的动作
git restore --staged <file>
重命名文件并加入暂存区
git mv <from> <to>
删除文件,并记住删除行为
git rm <file>
让git取消追踪一个文件
git rm --cached <file>
从commit
,开始interactive rebase
可以给commit和哈希id或者HEAD~3
.
git rebase -i <commit>
Commit
创建一个commit,git会打开编辑器
git commit
直接用msg
作为commit message
git commit -m <msg>
自动add 所有的file 然后commit
git commit -a
不创建新的commit,把改动增补到上一个commit。也可以用来编辑commit message
git commit --amend
创建一个revert commit
git revert <commit>
撤销上次commit,文件留在工作区
git reset --soft HEAD~1
撤销上次commit,工作区直接回滚到上一个commit的样子。可能会丢失一些工作
git reset --hard HEAD~1
注: reset
和 revert
对merge commit会有点麻烦
Branch
查看本地分支
git branch -v
查看远程分支
git branch -vv
切换到 branch
.
git checkout <branch>
创建新的分支 branch
并且马上切过去.
git checkout -b <branch>
View
查看工作区和暂存区
git status
查看当前分支的commit历史
git log
Config
查看git 的选项
git config --list
编辑全局git选项
git config -e --global
设置git commit 中的默认用户名
git config --global user.name "<name>"
Repo
在当前文件夹新建一个git 工程
git init
从远程克隆一个版本库
git clone <url>