前言:
本文记录的是常见的Git命令及其作用
增删改查、找回,重置修改文件
1  | git help # 显示command的help  | 
查看文件diff
1  | git diff # 比较当前文件和暂存区文件差异 git diff  | 
查看提交记录
1  | git log git log # 查看该文件每次提交记录  | 
查看、切换、创建和删除分支
1  | git br -r # 查看远程分支  | 
分支合并和rebase
1  | git merge # 将branch分支合并到当前分支  | 
Git补丁管理(方便在多台机器上开发同步时用)
1  | git diff > ../sync.patch  | 
Git暂存管理
1  | git stash # 暂存  | 
Git补丁管理(方便在多台机器上开发同步时用)
1  | git diff > ../sync.patch  | 
Git远程分支管理
1  | git pull # 抓取远程仓库所有分支更新并合并到本地  | 
Git远程仓库管理
1  | GitHub  | 
创建远程仓库
1  | git clone –bare robbin_site robbin_site.git # 用带版本的项目创建纯版本仓库  | 
git init
在本地新建一个repo,进入一个项目目录,执行git init,会初始化一个repo,并在当前文件夹下创建一个.git文件夹.
git clone
获取一个url对应的远程Git repo, 创建一个local copy.一般的格式是git clone [url].
clone下来的repo会以url最后一个斜线后面的名称命名,创建一个文件夹,如果想要指定特定的名称,可以git clone [url] newname指定.
git status
查询repo的状态.
1  | git status -s: -s表示short, -s的输出标记会有两列,第一列是对staging区域而言,第二列是对working目录而言.  | 
git log
show commit history of a branch(查看历史提交信息).
1  | git log –oneline –number #每条log只显示一行,显示number条.  | 
git add
查询repo的状态.
1  | 在提交之前,Git有一个暂存区(staging ),可以放入新添加的文件或者加入新的改动. commit时提交的改动是上一次加入到staging 中的改动,而不是我们disk上的改动.  | 
git diff
1  | show diff of unstaged changes #此命令比较的是工作目录中当前文件和暂存区域快照之间的差异,也就是修改之后还没有暂存起来的变化内容.  | 
git commit
1  | 提交已经被add进来的改动.  | 
git reset
(1) 概述
1  | undo changes and commits.  | 
(2) 总结
1  | git reset --mixed id,是将git的HEAD变了(也就是提交记录变了),但文件并没有改变,(也就是working tree并没有改变). 取消了commit和add的内容.  | 
git revert
反转撤销提交.只要把出错的提交(commit)的名字(reference)作为参数传给命令就可以了.
1  | git revert HEAD: 撤销最近的一个提交.  | 
git rm
1  | git rm file: 从staging区移除文件,同时也移除出工作目录.  | 
git clean
1  | git clean是从工作目录中移除没有track的文件.  | 
git mv
1  | git rm - - cached orig; mv orig new; git add new  | 
git stash
1  | 把当前的改动压入一个栈.  | 
git branch
1  | git branch可以用来列出分支,创建分支和删除分支.  | 
git checkout
1  | git checkout (branchname)  | 
git merge
把一个分支merge进当前的分支.
1  | git merge [alias]/[branch] #把远程分支merge到当前分支.  | 
git tag
1  | tag a point in history as import.  | 
git remote
1  | git remote #列出remote aliases.  | 
git fetch
1  | download new branches and data from a remote repository.  | 
git pull
1  | fetch from a remote repo and try to merge into the current branch.  | 
git rebase
1  | –rebase不会产生合并的提交,它会将本地的所有提交临时保存为补丁(patch),放在”.git/rebase”目录中,然后将当前分支更新到最新的分支尖端,最后把保存的补丁应用到分支上.  | 
git push
1  | git push [alias] [branch]  | 
git reflog
1  | git reflog是对reflog进行管理的命令,reflog是git用来记录引用变化的一种机制,比如记录分支的变化或者是HEAD引用的变化.  | 
特殊符号
1  | ^代表父提交,当一个提交有多个父提交时,可以通过在^后面跟上一个数字,表示第几个父提交: ^相当于^1.  | 
—— 感谢您的阅读 ( ゚∀゚) 有什么疑问可以在下方留言哦 ——