Git 常用命令备忘
Git 常用命令备忘
Git 配置
用户信息
1 2
| git config --global user.name "your name" git config --global user.email "[email protected]"
|
查看配置信息
1 2
| git config --list git config -l
|
Git 本地代理
1 2 3 4 5 6 7 8
| git config --global https.proxy http://127.0.0.1:1080
git config --global https.proxy http://127.0.0.1:1080
git config --global --unset http.proxy
git config --global --unset https.proxy
|
常见状态
- untracked: 未被 git 跟踪的文件
- unmodified: 未被修改的文件
- modified: 已修改的文件
- staged: 修改已被暂存的文件
仓库管理
Git 仓库初始化
克隆远程仓库
1 2 3 4
| git clone https://github.com/your-name/your-repo
git clone -b dev https://github.com/your-name/your-repo
|
检查文件状态
暂存文件
暂存的功能:
- 把已跟踪的文件放入暂存区
- 开始跟踪新文件
- 合并时把有冲突的文件标记为已解决状态
查看差异
1 2
| git diff git diff --staged
|
提交更新
将暂存区快照进行提交
1 2 3
| git commit git commit -a git commit -m 'bugfix'
|
提交历史
撤销操作
修改最后一次 commit
1 2 3
| git commit -m bugfix git add <file> git --amend
|
使用 –amend 参数修改 commit 不会创建一个新的 commit
取消暂存
撤销修改
销毁暂存
1 2 3
| git clean -f git clean -fd git clean -fxd
|
版本回退
1 2
| git reset --hard HEAD^ git reset --hard [commit_id]
|
版本回退保留更改
1 2
| git reset --soft HEAD^ git reset --soft [commit_id]
|
远程仓库
查看远程仓库
1 2 3
| git remote git remote -v git remote show [remote-name]
|
添加远程仓库
1
| git remote add [remote-name] <url>
|
拉取
1
| git fetch [remote-name] [branch]
|
通过 fetch 拉取远程仓库会在本地拥有该仓库所有分支或指定分支的引用, 可以查看或合并, 但不会自动合并或修改当前工作
1 2
| git pull git pull -u [remote-name] [branch]
|
拉取远程分支到当前分支, 并进行自动合并
推送
1 2
| git push git push -u [remote-name] [branch]
|
远程仓库的移除和重命名
1 2
| git remote rename [old-remote-name] [new-remote-name] git rm remote [remote-name]
|
标签
轻量标签
附注标签
推送标签
分支管理
创建分支
1 2
| git branch [branch-name] git checkout -b [branch-name]
|
查看分支
切换分支
1
| git checkout [branch-name]
|
删除分支
1 2
| git branch -d [branch-name] git push [remote-name] -d [branch-name]
|
修改本地分支名称
1
| git branch -m [old-branch-name] [new-branch-name]
|
合并分支
Gitignore
使用 npm 开源包 ggig 可以方便的自动生成各种不同语言的 gitignore 文件
安装 ggig
查看支持的语言
创建指定语言的 gitignore 文件
1 2 3
| ggig gen --template Java
ggig gen -t Java
|