git使用命令整理[根据廖雪峰的文档简洁整理]

php php 1355      收藏
git使用命令整理

##################git安装##################

sudo apt-get install git-core  //老一点的Debian或Ubuntu Linux

sudo apt-get install git //新的Debian或Ubuntu Linux

git config --global user.name "Your Name"//全局标记自己的用户名

git config --global user.email "email@example.com"//全局标记自己的邮箱

##################创建目录##################

mkdir workspace

cd workspace

##################添加文件##################

git init  //初始化一个Git仓库

git add <file>  //添加文件到Git暂存区

git commit -m ""//把暂存区的所有内容提交到当前分支

##################查看更改##################

git status //有哪些文件被修改过

git diff  //查看修改内容

##################版本回退##################

git reset --hard commit_id //HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令。

git log //穿梭前,可以查看提交历史,以便确定要回退到哪个版本。

git reflog //要重返未来,查看命令历史,以便确定要回到未来的哪个版本。

git checkout -- <file>  //可以丢弃工作区的修改,命令中的"--"很重要,没有"--",就变成了“切换到另一个分支”的命令

git reset HEAD <file> //可以把暂存区的修改撤销掉(unstage),重新放回工作区

##################文件删除##################

git rm <file>  //用于删除一个文件

##################远程仓库##################

ssh-keygen -t rsa -C "email@example.com"  //创建SSH Key

git remote add origin git@server-name:path/repo-name.git //关联一个远程库

git push -u origin master  //第一次推送master分支的所有内容

git push origin master //推送最新修改

git clone git@github.com:michaelliao/gitskills.git //把远程仓库克隆到本地

git remote -v //查看远程库信息

git push origin branch-name //从本地推送分支

git pull //从远程抓取分支

git checkout -b branch-name origin/branch-name //在本地创建和远程分支对应的分支

git branch --set-upstream branch-name origin/branch-name //建立本地分支和远程分支的关联

##################分支管理##################

git branch //查看分支

git branch <name>   //创建分支

git checkout <name>    //切换分支

git checkout -b <name> //创建+切换分支

git merge <name>     //合并某分支到当前分支

git branch -d <name> //删除分支

git log --graph //查看分支合并图

git merge --no-ff -m "note" name //准备合并dev分支,请注意--no-ff参数,表示禁用Fast forward

##################bug分支##################

git stash list //查看删除的分支

git stash apply //恢复删除分支

git stash drop //删除stash内容

git stash pop //恢复分支的同时把stash内容也删了

git branch -D <name> //丢弃未被合并过的分支

##################版本标签##################

git tag <name>  //新建一个标签

git tag -a <tagname> -m "blablabla..."   //可以指定标签信息

git tag -s <tagname> -m "blablabla..." //可以用PGP签名标签

git tag   //查看所有标签

git push origin <tagname>  //推送一个本地标签

git push origin --tags  //推送全部未推送过的本地标签

git tag -d <tagname>//删除一个本地标签

git push origin :refs/tags/<tagname>//删除一个远程标签

##################配置别名##################

git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"   //git log颜色高亮显示

自学php博客