git常用命令

常用的专业名词

Workspace:工作区

Index/Stage:暂存区

Repository:本地仓库

Remote:远程仓库

本地分支关联远程:git branch --set-upstream-to=origin/beta beta

新建代码库

git init #在当前目录创建一个新的git代码库 git init [project-name] #新建一个目录,将其初始化为git代码库 git clone [url] #克隆一个项目至当前目录

配置

git config --list #显示当前git的配置 git config -e [--global] #编辑git配置文件 #设置代码提交的用户名和邮箱 git config --global user.name="[name]" git config --global user.email="[email]"

增加/删除文件

git add [file1] [file2] ... #添加指定文件到缓存区 git add [dir] #添加指定目录到暂存区 git add . #添加当前目录的所有文件到暂存区 git rm [file1] [file2]... #删除工作区文件,并且将这次删除放入暂存区 git mv [file-original] [file-renamed] #改名文件,并将这个改名放入暂存区

代码提交

git commit -m [message] #提交代码到仓库区 git commit -a #提交工作区自上次commit之后的变化,直接到仓库去区 git commit -v #提交时显示所有的diff信息 git commit --amend -m [message] #使用新的commit,替代上一次提交,如果代码没有发生变化,则用来改写上一次commit的提交信息 git commit --amend [file1] [file2] ... #重做上次提交,并包括指定文件的新变化

分支

git branch #列出所有本地分支 git branch -r #列出所有远程分支 git branch -a #列出所有本地分支和远程分支 git branch [branch-name] #新建一个分支,但依然停留在当前分支 git checkout -b [branch] #新建一个分支,并切换到该分支 git branch [branch] [commit] #新建一个分支,并指向指定的commit git branch --track [branch] [remote-branch] #新建一个分支,与指定的远程分支建立追踪关系 git checkout [branch-name] #切换到指定分支,并更新工作区 git checkout - #切换到上一个分支 git merge [branch] #合并指定分支到当前分支 git cherry-pick [commit] #选择一个commit,合并进当前分支 git branch -d [branch-name] #删除分支 #删除远程分支 git push origin --delete [branch-name] git branch -dr [remote/branch]

标签

git tag #列出所有的tag git tag [tag] #新建一个tag在当前commit git tag [tag] [commit] #新建一个tag在指定的commit git tag -d [tag] #删除本地tag git push origin :refs/tags/[tagName] #删除远程tag git show [tag] #查看tag信息 git push [remote] [tag] #提交指定tag git push [remote] --tags #提交所有的tag git checkout -b [branch] [tag] #新建一个分支,指向某个tag

查看信息

git status #显示所有变更的文件 git log #显示当前分支的版本历史 git log --stat #显示commit历史,以及每次commit发生变更的文件 git diff #显示暂存区和工作区的差异 git diff --cached [file] #显示暂存区与上一个commit的差异 git diff HEAD #显示工作区与当前分支最新的commit之间的差异

远程同步

git fetch [remote] #下载远程仓库的所有变动 git remote -v #显示所有远程仓库 git remote add [shortname] [url] #增加一个新的远程仓库,并命名 git pull [remote] [branch] #取回远程仓库的变化,并与本地分支合并 git push [remote] [branch] #上传本地分支至远程仓库 git push [remote] --force #强行推送当前分支到远程仓库,即使有冲突 git push [remote] --all #推送所有分支到远程仓库

撤销

git checkout [file] #恢复暂存区的指定文件到工作区 git checkout . #回复暂存区的所有文件到工作区 git reset [file] #重置暂存区的指定文件,与上一次的提交保持一致,但是工作区不变

Git分支管理策略

主分支Master(自动建立)

开发分支Develop

#git创建Develop分支命令 git checkout -b develop master #将Develop分支发布到Master分支的命令 git checkout master #切换到master分支 git merge --no-ff develop #对develop分支进行合并

临时性分支

功能分支(feature):为了开发某种特定的功能,从develop分支上面分出来的,要再并入Develop

#创建一个功能性分支 git checkout -b feature-x develop #将功能分支合并到develop分支 git checkout develop git merge --no-ff feature-x #删除feature分支 git branch -d feature-x

预发布分支(release):发布正式版本之前,预发布的版本用于测试,预发布结束后,必须合并到Develop和Master分支

#创建一个预发布分支 git checkout -b release-1.2 develop #合并到master分支 git checkout master git merge --no-ff release-1.2 #对合并生成的新节点,做一个标签 git tag -a 1.2 #再合并到develop分支 git checkout develop git merge --no-ff release-1.2 #最后删除预发布分支 git branch -d release-1.2

修补bug分支(fixbug):软件上线后出现bug,进行修补bug的分支,从Master分支上分出来的,修补结束后,与Develop和Master分支进行合并。

#创建一个修补bug分支 git checkout -b fixbug-0.1 master #合并到master分支 git checkout master git merge --no-ff fixbug-0.1 git tag -a 0.0.1 #合并到develop分支 git checkout develop git merge --no-ff fixbug-0.1 #删除修补的bug分支 git branch -d fixbug-0.1

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值