git基本用法教程(fork软件+git命令)

git基本用法教程

  • 1. git commit
  • 2. git branch
  • 3. git checkout
  • 4. git merge
  • 5. git rebase
  • 6. 在提交树中移动
  • 7. 撤销变更
  • 8. 整理提交记录
  • 9. 提交的技巧
  • 10. fork的使用

当然除了环境和demo的运行和改写,work flow中当然少不了git的参与!
git使得开发的流程更加清晰,main, develop,release,feature,bugFix等branch的通力合作,使得项目可以更快,更高效的推进和整合。这里简单介绍下git的一些用法和语法,并且推荐大家使用fork进行本地项目的管理(当然使用原生的git也可以,原生的GUI不如fork友好,但是经验老道的程序员命令行用的嘎嘎飞起,分支流程都梳理的清楚,用啥都行~)

1. git commit

版本比对,将差异打包到一起作为一个提交记录

git保存提交的历史记录

语法:git commit

2. git branch

使用分支相当于:我想基于这个提交以及它所有父类提交进行新工作

语法:git branch branch_name

git branch -f main HEAD~3:将main分支强制指向HEAD的第三级父提交

3. git checkout

语法:git checkout nodeName

将当前节点切换到分支上

快捷创建分支并切换:

git checkout -b branchName

4. git merge

合并两个分支——新建一个分支,在其开发某个新功能,开发完成后再合并回主线。

merge合并两个分支:把两个父节点本身及他们的所有祖先包含进来

5. git rebase

提取一系列的提交记录,进行”复制“,在另外一个地方逐个放下

可以创造更线性的提交历史

语法:git rebase NodeName

将当前节点复制并放在NodeName的下方

6. 在提交树中移动

head——一个对当前所在分支的符号引用——指向正在其基础上进行工作的提交记录

head总是指向当前分支上最近的一次提交记录。通常指向分支名

分离的head让其指向了一个具体的提交记录而不是分支名

HEAD-> main -> C1

git checkout C1后变成:

HEAD -> C1

通过制定提交记录的哈希值(示例中为C1)在git中移动不方便,因为哈希值在git中会很长(基于SHA-1 40位),可以使用git log查看提交记录的哈希值

相对引用—:

^:向上移动1个提交记录

~num:向上移动多个提交记录

7. 撤销变更

git reset:通过把分支记录回退几个提交记录来实现撤销改动。改写历史,原来指向的提交记录就跟从来没有提交过一样。

git reset HEAD~1

git revert:这种改写历史的方法对大家一起使用的远程分支是无效的!

为了撤销更改并分享给别人,我们需要使用git revert:

更改为了撤销该提交(所以这里会自动git commit一个新”撤销“的版本),revert之后就可以把你的更改推送到远程仓库中

git revert HEAD

8. 整理提交记录

git cherry-pick 《提交号》

git cherry-pick C2 C4

交互式的rebase——从一系列提交记录中找到想要的记录

git rebase --interactive(-i)

会调用rebase UI界面,完成三件事:

调整提交记录的顺序

删除不想要的提交(切换pick的状态完成

合并提交

9. 提交的技巧

情况:分支上进行了一次提交,基于它创建了新分支,再次提交,此时想对以前某个提交记录进行调整:

git rebase -i

git commit --amend

git rebase -i

10. fork的使用

我们在这里https://git-fork.com/下载mac或Windows版本的fork,直接安装就行。
界面入图所示:
git基本用法教程(fork软件+git命令)_第1张图片
对于fork的操作后续补充~

你可能感兴趣的:(后端开发,git,fork)