创建版本库:

  • mkdir:创建文件夹
  • cd:进入当前目录
  • pwd:用于显示当前目录
  • git init:将这个目录变成git可以管理的仓库
  • git add 文件名:将这个文件添加到暂存区
  • git commit -m ‘注释信息’:把文件提交到仓库

版本回退:

  • git log:显示从最近到最远的提交日志
  • git log –pretty=oneline:显示提交日志的简版
  • git reset –hard HEAD^:回退到上一个版本
  • git reset –soft HEAD^:回退到上一个版本,不改变本地已修改的内容
  • git reset –hard 版本号:回退到指定版本
  • git reflog:查询历史命令(里面包含版本号)

工作区和暂存区:

  • git diff 文件名:查看文件中哪些内容被修改了

  • git diff HEAD –文件名:查看工作区和版本库里面最新版本的区别

  • git status:查看工作区状态,检查是否还有文件未提交

撤销修改:

  • git checkout – 文件名:让这个文件回到最近一次git commit或git add时的状态。(注意空格)

删除文件:

  • git rm 文件名:删除文件(类似于git add 文件名),此时有两个选择:
    • 从版本库中删除该文件执行git commit;
    • 误删执行git checkout – 文件名

远程仓库:

  • git remote add origin GitHub账户名/仓库名.git:关联远程仓库
  • git push -u origin master:将当前分支master推送到远程
  • git push origin master:把本地master分支的最新修改推送至GitHub
  • git clone git@github.com:GitHub账户名/仓库名.git:从远程仓库中克隆到本地仓库

分支管理:

  • 创建与合并分支
  • git checkout dev:创建dev分支
  • git checkout -b dev:创建dev分支并切换到分支
  • git branch:查看当前分支
  • git merge dev:将dev分支上的工作成果合并到当前分支上
  • git branch -d dev:删除dev分支
  • git switch -c dev:创建并切换到dev分支
  • git switch master:切换到已有的master分支

分支管理策略

  • git merge –no-ff -m “merge with no-ff” dev:合并分支并禁用Fast Forward

Bug分支

  • git stash:将当前工作现场“隐藏”起来,用于工作没有完成,但需要先解决bug的情况,如果下拉代码的时候发生冲突,可以使用该指令将当前工作现场“隐藏”起来,然后手动解决冲突;
  • git stash list:查看隐藏起来的工作现场
  • git stash apply:恢复工作现场,但是恢复后,stash内容并不删除,你需要用git stash drop来删除;
  • git stash pop:恢复的同时把stash内容也删了
  • 在master分支上修复的bug,想要合并到当前dev分支,可以用git cherry-pick <版本号>命令,把bug提交的修改“复制”到当前分支,避免重复劳动。

Feature分支

  • git branch -D <分支名>:强行丢弃一个没有被合并过的分支。

多人协作

  • git remote:查看远程仓库的信息
  • git remote -v:查看远程仓库更详细的信息
  • git push origin master:将本地仓库的master分支推送到远程仓库中
  • git rebase:把本地未push的分叉提交历史整理成直线

标签管理

创建标签

  • git tag <name>:在需要打标签的分支上打出标签
  • git tag:查看所有标签
  • git tag <name> <commit>:根据版本号进行打标签(补签)
  • git show <tagname>:查看标签信息
  • git tag -a <tagname> -m “说明文字” <commit>:创建带有说明的标签,用-a指定标签名,-m指定说明文字

操作标签

  • git tag -d <tagname>:删除标签
  • git push origin <tagname>:推送某个标签到远程
  • git push origin –tags:一次性推送全部尚未推送到远程的本地标签
  • 删除远程标签:先要删除本地标签git tag -d v0.9,然后再删除远程标签git push origin :refs/tags/v0.9

使用Gitee

  • git remote rm origin:删除已有的GitHub远程库

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!

SQL必知必会 Previous
分布式中间件技术实战篇 Next