Git 的正确使用姿势与最佳实践 | 青训营

72 阅读3分钟

Git 是现代软件开发中最流行和广泛使用的版本控制系统之一。本文将主要介绍git的常用命令以及常见工作流-功能分支工作流。

常用命令

克隆仓库

git clone <repository_url>

该命令会从指定的 <repository_url>中下载代码,并在本地创建一个副本。用户可以在本地的副本上进行修改、提交、分支操作等。

提交更改

git add <file_name>
git commit -m "修改xxx文件"
git push <remote> <branch>

提交更改主要涉及三个命令。git add用于将指定的文件添加到暂存区,git commit用于将暂存区中的文件提交到本地仓库,-m用于添加提交信息,git push用于将本地提交推送到远程仓库。

分支操作

分支是Git中用于并行开发的重要概念,团队成员可以在不同的分支上开发不同的功能或修复不同的问题,在某个分支上的修改和提交不会影响到其它分支。以下是关于分支操作的一些常用命令。

git branch
git branch <branch_name>
git checkout -b <branch_name>
git checkout <branch_name>

git branch用于查看本地分支列表,git branch <branch_name>用于创建一个新的分支,但是注意使用该命令不会自动切换到新创建的分支上,而git checkout -b <branch_name>用于创建一个新分支并切换到该分支上,git checkout <branch_name>用于切换到已有的某个分支。

版本历史

git log

git log命令用于显示当前分支的提交历史记录。它按照提交时间的倒序列出了每个提交的详细信息,包括提交哈希值、作者、日期、提交消息等。

功能分支工作流

功能分支工作流是一种在Git中广泛使用的代码协作方式。它的核心思想是创建基于特定功能或任务的独立分支,在该分支上进行开发和修改,最后将其合并回主分支。以下是该工作流的一个示例。

小红负责开发一个新功能

小红使用 git checkout -b task-feature 创建并切换到一个新的独立分支,开始功能开发工作。在该过程中,小红可以根据需要使用上述命令将更改提交到本地仓库。

小红要去吃个午饭

在吃午饭前,小红打算把早上在task-feature分支上写的代码提交到中央仓库,这样做有两个目的,一是对代码进行备份,而是提交到中央仓库后其他开发人员可以看到小红写的代码。使用的命令为git push origin task-feature。

小红完成功能开发

午饭后,小红回来后完成了整个功能的开发。她先使用命令git push origin task-feature把最新的代码提交到中央仓库,然后在将修改合并到主分支即master分支前,小红发起了一个 Pull Request,以通知团队其他成员功能已经完成。当团队中的其它成员收到Pull Request后,可以查看task-feature分支上的代码并讨论决定是否需要进行一些修改。团队成员根据讨论结果对task-feature分支上的代码进行适当修改后,可以将task-feature分支合并到主分支。
最终的代码合并可以使用git checkout master先切换到master分支,然后使用git pull origin task-feature将task-feature分支的修改合并到本地的master分支,最后使用git push origin master将master分支的代码提交到中央仓库。