git常用指令
- $ git init
通过git init命令把这个目录变成Git可以管理的仓库 - $ git add file
git add告诉Git,把文件添加到仓库 - $ git commit -m "提交说明"
git commit告诉Git,把文件提交到仓库 - $ git status
git status命令可以让我们时刻掌握仓库当前的状态 - $ git diff file
查看更改内容 - $ git log --pretty=oneline
git log命令显示从最近到最远的提交日志 - $ git reset --hard HEAD^
回退一个版本 ,几个^就是回退几个版本 - $ cat file
查看文件内容 - $ git reset --hard commit id
回退到commit id的版本 Git回退版本的速度非常快,在Git内部有个指向当前版本的HEAD指针,当你回退版本的时候,Git只是把指针指向的位置换了一下。 - $ git reflog
git reflog用来记录你的每一次命令 Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。 - 我们把文件往Git版本库里添加的时候,是分两步执行的
第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区; 第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。 因为我们创建Git版本库时,Git自动为我们创建了唯一一个master分支,所以,现在,git commit就是往master分支上提交更改。 你可以简单理解为,需要提交的文件修改通通放到暂存区,然后,一次性提交暂存区的所有修改。 - $ git checkout -- file
丢弃工作区的修改 - $ git reset HEAD file
git reset命令既可以回退版本,也可以把暂存区的修改回退到工作区。当我们用HEAD时,表示最新的版本 - $ git rm file
从版本库中删除该文件 - $ git checkout -- file
如果删除错了通过git checkout可以一键还原 - $ ssh-keygen -t rsa -C GitHub账户名
创建SSH Key - $ git remote add origin GitHub地址
将本地仓库与远程仓库关联,必须有拥有SSH Key的公钥 添加后,远程库的名字就是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库。 - $ git push -u origin master
把本地库的内容推送到远程,用git push命令,实际上是把当前分支master推送到远程。 - $ git clone GitHub地址
克隆 GitHub地址的仓库 - $ git branch
查看分支 - $ git branch
创建分支 - $ git checkout
切换分支 - $ git checkout -b
创建+切换分支 - $ git merge
合并某分支到当前分支 - $ git branch -d
删除分支 - $ git log --graph
查看分支合并图 通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息。 - $ git merge --no-ff -m "merge with no-ff" dev
使用--no-ff参数,禁用Fast forward - $ git stash
将分支储存起来,等需要时恢复 - $ git stash list
查看储存起来的分支 恢复储存分支的两种方法: 一是用git stash apply恢复,但是恢复后,stash内容并不删除,你需要用git stash drop来删除。 另一种方式是用git stash pop,恢复的同时把stash内容也删了: - $ git branch -D feature-vulcan
强行删除分支 - $ git remote
查看远程库的信息 - $ git remote -v
显示更详细的信息 - $ git push origin master
推送分支,就是把该分支上的所有本地提交推送到远程库。推送时,要指定本地分支,这样,Git就会把该分支推送到远程库对应的远程分支上 - $ git tag v1.0
当前版本打一个新标签 - $ git tag
查看所有标签 - $ git tag v0.9 -m "version 0.9" commit id
给某一个提交的版本打标签,-m说明文字 - $ git show <标签>
查看标签信息 - $ git tag -d <标签>
删除标签 - $ git push origin <标签>
推送标签到远程仓库 - $ git push origin --tags
将所有标签全部推送到远程仓库 - $ git tag -d <标签>
如果标签已经推送到远程,要删除远程标签先删除本地标签 - $ git push origin :refs/tags/<标签>
然后从远程删除
最后更新:2017-08-23 20:02:32