Git常用命令

git常用命令:

 

###############自报家门,告诉大家我是谁##############
git config --global user.name "HYXC"  #--global参数表示这台机器都使用这个name
git config --global user.email "[email protected]"
###############当前目录创建为git仓库#################
git init
git init --bare sample.git     #创建一个裸仓库,也就是一个没有工作区的仓库,搭建git服务器能用到
###############添加文件到版本库###################
git add file.txt
git add file1.txt file2.txt
##################把添加的文件提交到仓库##########
git commit -m "a new file"   #-m参数后面输入的是本次提交的说明
#################查看仓库当前状态###############
git status
##################查看当前工作区文件与当前版本库的不同########
git diff
git diff HEAD -- file
##################查看历史git提交日志##########
git log
git log --pretty=oneline     #--pretty=oneline输出日志,仅输出commit id和描述
git log --graph --pretty=oneline --abbrev-commit   #查看分支合并图
#################版本回退######################
git reset --hard HEAD^        #HEAD^表示回退到上个版本;HEAD表示当前版本,HEAD^表示上一个版本,也可用head~1表示上一个版本
git reset --hard 3f28dw4      #利用commit id回退到某个版本
git reset HEAD file          #将当前暂存区的修改撤销掉,重新放回工作区
##################查看历史命令记录###############
git reflog
##################回退当前工作区修改###########
git checkout -- file        #有两种情况:一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
#################版本库中删除文件########
git rm file
###################本地仓库关联远程仓库##############
git remote add origin [email protected]:hyxc/hyxc.git
##################把本地库的所有内容推送到远程库上,前提是本地SSH Key公钥已推送到远程账户########
git push -u origin master    #加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。
git push origin master       
################克隆远程库到本地当前目录#################
git clone [email protected]:hyxc/hyxc.git
#################创建并切换到分支########
git checkout -b dev    #-b参数表示创建并切换
git checkout -b dev origin/dev     #创建远程分支到本地
git branch dev         #创建分支
git checkout dev       #切换到dev分支
################查看当前分支#########
git branch                   #当前分支前面会标一个*号
################合并指定分支到当前分支###########
git merge dev
git merge --no-ff -m "merge with no-ff" dev #合并分支禁用Fast forward模式
###############删除指定分支###################
git branch -d dev
git branch -D feature    #强制删除某个未合并分支
###############储藏当前工作区#############
git stash
################查看储藏的之前工作区现场########
git stash list
###############恢复藏的工作区现场,同时把stash内容删了##########
git stash pop        #恢复的同时把stash内容也删了
git stash apply      #恢复stash内容,但不删除
git stash apply stash@{0}     #恢复到指定stash
git stash drop       #删除stash
#####################查看远程库信息#######################
git remote -v         #参数-v,显示详细信息
####################指定本地dev分支与远程origin/dev分支的链接#####
git branch --set-upstream dev origin/dev
##################抓取远程仓库,前提是本地分支和远程分支的已创建链接关系#######
git pull
###############打标签##########
git tag
git tag v0.9 6e24937     #指定给某次commit打标签
git tag -a v0.1 -m "version 0.1 released" 3628164    #创建带有说明的标签,用-a指定标签名,-m指定说明文字
git tag -s v0.2 -m "signed version 0.2 released" fec145a    #-s用私钥签名一个标签
#################查看所有标签#########
git tag
git show       #查看标签详细信息
git describe --tags         #查看实时tag版本
#################删除标签###########
git tag -d v0.1
git push origin :refs/tags/     #删除一个远程标签,需先删除本地的相应标签
git push origin --delete tag      #同上
###############支持标签到远程#######
git push origin
git push origin --tags                #一次性推送全部尚未推送到远程的本地标签
################其他################
git config --global color.ui true       #让Git显示颜色,会让命令输出看起来更醒目
git config --global alias.st status     #配置别名
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教程:

http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

你可能感兴趣的:(git)