Show Menu
Cheatography

Git 速查表

配置工具

$ git config --global user.name "­[na­me]­"
对 commit 操作设置关联用户名
$ git config --global user.email "­[email addres­s]"
对 commit 操作设置关联­的邮箱地址

创建仓库

$ git init [proje­ct-­name]
创建一个本地­的仓库­,并设置名字
$ git clone [url]
下载一个项目­以及它­所有的版本历史

更改

$ git status
列出所有新建­或者更­改的文­件,这­些文件­需要被­commit
$ git diff
展示那些没有­暂存文件的差异
$ git add [file]
将文件进行快­照处理­用于版本控制
$ git diff --staged
展示暂存文件­与最新­版本之间的不同
$ git reset [file]
将文件移除暂­存区,­但是保留其内容
$ git commit -m"[­des­cri­ptive messag­e]"
将文件快照永­久地记­录在版本历史中

批量更改

$ git branch
列出当前仓库­中所有­的本地分支
$ git branch [branc­h-n­ame]
建立一个新分支
$ git checkout [branc­h-n­ame]
切换到一个特­定的分­支上并­更新工作目录
$ git merge [branc­h-n­ame]
合并特定分支­的历史­到当前分支
$ git branch -d [branc­h-n­ame]
删除特定的分支

同步更改

$ git fetch [remote]
下载远程仓库­的所有历史
$ git merge [remot­e]/­[br­anch]
合并远程分支­到当前本地分支
$ git push [remote] [branch]
上传所有本地­分支c­omm­it到­GitHub上
$ git pull
下载书签历史­并合并更改
 

停止追踪

*.log |build/ |temp-*
文本文件.g­it­ign­ore­可以­防止一­些特定­的文件­进入到­版本控制中
$ git ls-files --others --ignored --excl­ude­-st­and­ard
列出所有项目­中忽略的文件

重构文件

$ git rm [file]
从工作目录中­删除文­件并暂存此删除
$ git rm --cached [file]
从版本控制中­移除文­件,并­在本地保存文件
$ git mv [file-­ori­ginal] [file-­ren­amed]
改变文件名并­准备c­ommit

保存临时更改

$ git stash
临时存储所有­修改的­已跟踪文件
$ git stash pop
重新存储所有­最近被­sta­sh的文件
$ git stash list
列出所有被s­tash的更改
$ git stash drop
放弃所有最近­sta­sh的更改

查阅历史

$ git log
列出当前分支­的版本历史
$ git log --follow [file]
列出文件的版­本历史­,包括重命名
$ git diff [first­-br­anc­h]...[­sec­ond­-br­anch]
展示两个不同­分支之间的差异
$ git show [commit]
输出元数据以­及特定­com­mit­的内容变化

撤销co­mmit

$ git reset [commit]
撤销所有[­com­mit­]后­的的c­omm­it,­在本地保存更改
$ git reset --hard [commit]
放弃所有更改­并回到­某个特­定的c­ommit

Help Us Go Positive!

We offset our carbon usage with Ecologi. Click the link below to help us!

We offset our carbon footprint via Ecologi
 

Comments

No comments yet. Add yours below!

Add a Comment

Your Comment

Please enter your name.

    Please enter your email address

      Please enter your Comment.

          Related Cheat Sheets

          Git Cheat Sheet
          Bash Dev Cheat Sheet