安装
命令
git config
默认信息设置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| git config --global user.name 用户名
git config --global user.email 邮件
git config --global http.postBuffer 1048576000
git config --global core.ignorecase false
git config --global credential.helper store
git config --global credential.helper wincred
|
git init
初始化本地仓库
1 2 3 4 5 6 7
| git init [指定的目录名称]
git init
git init config
|
git status
查看改动信息
git diff
详细查看当前的改动信息
1 2 3 4 5 6 7 8 9 10 11
| git diff
git diff --cached
git diff HEAD
git diff --stat
|
git add
缓存改动到版本控制
1 2 3 4 5 6 7 8 9 10
| git add <文件夹|文件筛选格式>
git add .
git add *.c
git add README
|
git rm
删除文件或缓存
1 2 3 4 5 6 7 8 9 10 11
| git rm 文件名称
git rm -f 文件名称
git rm -r 文件夹/
git rm --cached 文件名称
|
git mv
移动和重命名一个文件、目录
1
| git mv [旧的的文件名|旧的目录名] [新的文件名|新的目录名]
|
git commit
将add内容提交到本地仓库
1 2 3 4 5 6 7
| git commit -m <日志>
git commit -m "测试git"
git commit --allow-empty -m "测试git"
|
git clone
git仓库拷贝到本地
1 2 3 4 5 6 7
| git clone <仓库路径> [指定的路径]
git clone https://github.com/linchunbogit/testgit.git
git clone https://github.com/linchunbogit/testgit.git testDir
|
git reset
取消本地仓库缓存
1 2 3 4 5 6 7 8 9 10 11
| git reset HEAD
git reset --hard HEAD^
git reset --hard HEAD~100
git reset --hard 版本号
|
git branch
分支管理
1 2 3 4 5 6 7 8 9 10 11
| git branch
git branch 分支名
git branch -d 分支名
git push origin --delete branch
|
git checkout
分支切换
1 2 3 4 5 6 7 8
| git checkout 已经存在的分支名称
git checkout -b 不存在的分支名
git checkout 文件名称 (要输入2次)
|
git merge
分支合并
git log
日志查看
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| git log
git log -数量
git log --oneline
git log --graph
git log --author=用户名
git log --oneline --before={3.weeks.ago} --after={2010-04-18}
git log --decorate
git log --name-only
git log --name-status
|
git tag
提交记录上标签
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| git tag
git show-ref --tags
git tag -a v1.0
git tag -a v1.2 版本号
git tag -a 标签名称 -m 信息
git push origin 标签名称
git fetch --tags
|
git clean
清理
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| git clean -n
git clean -f
git clean -f <path>
git clean -df
git clean -xdf <path>
|
git cherry-pick
相比较于merge,cherry-pick只合并指定的commit,不会将该commit之前的所有内容都合并。
1 2 3 4 5
| git cherry-pick commit-sha-id
git cherry-pick commit-sha-id1 commit-sha-id2
|
git update-index
1 2 3 4 5 6 7 8 9 10 11
| git update-index -–assume-unchanged /aa.text
git update-index -–no-assume-unchanged /aa.text
git ls-files -v | grep '^h\ '
git ls-files -v | grep '^h' | awk '{print $2}' |xargs git update-index --no-assume-unchanged
|
常用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| git pull
git push
git checkout ./
git reset HEAD^ --hard git checkout ./
git branch -d 分支名
git push origin --delete 分支名
git branch
git branch -a
git checkout branch1 git cherry-pick 7c8f33a432012931aec5d500c065decaf8ee5aa2 git push
git clone --bare http://xxxxx1/xxxx.git cd xxxx.git git push --mirror http://xxxxx2/xxxx.git
|
操作
补丁

打补丁
代理
1 2 3 4 5 6 7 8 9 10
| git config --global http.proxy git config --global https.proxy
git config --global --unset http.proxy git config --global --unset https.proxy
git config --global http.proxy http://[proxy_address]:[proxy_port]
|
链接
git命令查阅