Git 的正确使用姿势与最佳实践:团队协作和版本控制的最佳实践| 青训营

85 阅读12分钟

Git 的正确使用姿势与最佳实践:团队协作和版本控制的最佳实践| 青训营

Git的正确使用姿势

Git 是一个免费和开源的分布式版本控制系统,用于跟踪文件和文件夹的更改。它在软件开发中非常流行,但也可以用于其他目的,如文档管理和网站开发。

Git 工作原理是通过创建一个“版本库”来存储文件和文件夹的更改。版本库是一个包含所有更改历史的文件夹。当您对文件或文件夹进行更改时,Git 会将这些更改存储在版本库中。您可以随时从版本库中检出以前的版本,或者将更改合并到其他版本中。

Git 有许多优点,包括:

  • 分布式:Git 是一个分布式版本控制系统,这意味着您可以将版本库存储在任何地方,包括您的本地计算机、云端或服务器上。
  • 可追溯性:Git 跟踪所有更改历史,这使您可以轻松地查看文件或文件夹的任何更改。
  • 可恢复性:如果您不小心删除了文件或文件夹,您可以从版本库中恢复以前的版本。
  • 可协作性:Git 非常适合多人协作,您可以轻松地与其他开发人员共享您的工作。

Git 有许多不同的使用方法,但这里有一些常见的 Git 语句:

  • git init:创建一个新版本库。
  • git add:将文件添加到版本库。
  • git commit:提交更改到版本库。
  • git log:查看版本历史。
  • git branch:创建分支。
  • git merge:合并分支。
  • git push:将更改推送到远程版本库。
  • git pull:从远程版本库拉取更改。
  • git reset:重置版本库。
  • git checkout:切换分支。
  • git tag:标记版本。
  • git clone:克隆版本库。
  • git stash:暂存更改。
  • git clean:清理版本库。

创建一个项目

使用Git创建项目有两种方法:在GitHub上创建一个新项目,或在本地创建一个新项目,然后将其推送到GitHub。

在GitHub上创建一个新项目

  1. 登录你的GitHub帐户。
  2. 点击左上角的“创建”按钮。
  3. 点击“仓库”选项卡。
  4. 在“仓库名称”字段中输入你的仓库名称。
  5. 在“描述”字段中输入你的仓库描述。
  6. 选择你是否要将你的仓库设置为公开或私有。
  7. 点击“创建仓库”按钮。

你的仓库将创建并在GitHub上可用。

在本地创建一个新项目,然后将其推送到GitHub

  1. 在你的计算机上创建一个新文件夹。
  2. 进入新文件夹。
  3. 运行以下命令来初始化一个新的Git仓库:
git init
  1. 添加你要跟踪的文件到仓库:
git add <file1> <file2> ...
  1. 提交你的更改:
git commit -m "Initial commit"
  1. 将你的仓库推送到GitHub:
git push origin master

你的仓库将被推送到GitHub,并且可以通过你的GitHub帐户访问。

克隆到本地并创建分支

  1. 在你的计算机上创建一个新文件夹。
  2. 进入新文件夹。
  3. 运行以下命令来克隆你的GitHub项目:
git clone https://github.com/[你的GitHub用户名]/[你的项目名称].git
  1. 运行以下命令来创建一个新分支:
git checkout -b [你的分支名称]

例如,如果你想创建一个名为 feature-branch 的新分支,你需要运行以下命令:

git checkout -b feature-branch

你可以使用以下命令来切换到该分支:

git checkout feature-branch

现在,你已经切换到 feature-branch 分支。你可以开始在该分支上进行工作了。

在分支上提交更改

如何在分支上提交更改:

  1. 在你想更改的分支上工作。
  2. 进行更改。
  3. 运行以下命令来添加更改到暂存区:
git add [文件名]

如果要添加多个文件,请使用逗号分隔文件名:

git add [文件名1] [文件名2] [文件名3]
  1. 运行以下命令来提交更改:
git commit -m "提交消息"

提交消息应该简洁明了地描述了你的更改。

现在,你的更改已经提交到分支了。你可以将更改推送到远程仓库,或者创建一个拉取请求,将更改合并到主分支。

将更改推送到远程仓库

  1. 切换到你想推送的分支。
  2. 运行以下命令:
git push origin <分支名称>

例如,如果分支名称是 feature-branch,你需要运行以下命令:

git push origin feature-branch

现在,你的更改已经推送到远程仓库了。

创建一个拉取请求,将更改合并到主分支

  1. 切换到你想合并更改的主分支。
  2. 运行以下命令:
git pull
  1. 点击左上角的“拉取请求”按钮。
  2. 点击“创建拉取请求”按钮。
  3. 在“拉取请求”页面中,选择你想合并的更改分支。
  4. 点击“创建拉取请求”按钮。

现在,你已经创建了一个拉取请求。其他团队成员可以查看你的拉取请求,并提供反馈。当你的拉取请求得到批准后,将被合并到主分支。

合并分支

有两种方法可以合并分支:

  • 使用 git merge 命令。
  • 使用 GitHub 的拉取请求。

使用 git merge 命令

要使用 git merge 命令合并分支,请在你想合并分支的终端中运行以下命令:

git merge <分支名称>

例如,如果要合并名为 feature-branch 的分支,你需要运行以下命令:

git merge feature-branch

git merge 命令将合并 feature-branch 分支中的更改到当前分支。如果合并成功,git merge 命令将不会输出任何内容。如果合并失败,git merge 命令将输出错误消息。

使用 GitHub 的拉取请求

要使用 GitHub 的拉取请求合并分支,请在 GitHub 网站上执行以下步骤:

  1. 转到你想合并分支的项目页面。
  2. 点击左侧菜单中的“分支”选项卡。
  3. 点击你想合并分支的名称。
  4. 点击“合并请求”按钮。
  5. 在“创建拉取请求”页面中,选择你想合并的更改分支。
  6. 点击“创建拉取请求”按钮。

现在,你已经创建了一个拉取请求。其他团队成员可以查看你的拉取请求,并提供反馈。当你的拉取请求得到批准后,将被合并到主分支。

实践

创建项目之前

在创建项目之前,我们需要先使用git登录我们的账户,如果没有账户的可以先到 注册GitHub 进行注册
1.打开一个终端
2.设置用户名:

git config --global user.name "你的用户名"

3.设置邮箱:

git config --global user.email "你的电子邮件地址"

Screenshot_20230804_162606.png
4.检查信息:

git config --list

Screenshot_20230804_163311.png

创建项目

新建一个目录:

Screenshot_20230804_163622.png

初始化一个新的git仓库

Screenshot_20230804_163846.png
可以看到提示我们初始分支名是master,我们可以使用:

git branch -m <name>

来更换分支名字,我们这里先不更改

添加文件

由于我们这里是新建的文件夹,里面没有任何文件,所以我复制了一份我自己练习写的代码:

Screenshot_20230804_164301.png

然后我们使用:

git add .

将该目录下的所有文件添加到暂存区

提交更改

使用:

git commit -m ""

来提交更改,双引号中的内容是对本次提交的说明

Screenshot_20230804_164619.png

创建远程仓库

1. 在GitHub上创建一个新项目。

Screenshot_20230804_165322.png

Screenshot_20230804_165339.png

2. 创建一个main分支。

Screenshot_20230804_170731.png

git branch -M main
3. 连接远程仓库:
git remote add origin git@github.com:yibajianghudao/goObject.git

Screenshot_20230804_170740.png

4.将仓库推送到GitHub:
git push -u origin main

Screenshot_20230804_170445.png

可以看到我们的项目已经可以在网页上看到了:

Screenshot_20230804_170507.png

修改文件后推送

新建项目之后,我们来修改文件之后进行推送:

Screenshot_20230804_171338.png

Screenshot_20230804_171358.png 我们将printer.go中的打印换成了Hello World!
然后我们可以使用:

git status

查看当前的修改状态

Screenshot_20230804_172228.png
然后使用:

git add path/to/modified/file

将修改添加到暂存区

Screenshot_20230804_172304.png
接着使用:

git commit -m "描述您的修改"

提交修改
Screenshot_20230804_172506.png
最后进行推送:

git push origin main

Screenshot_20230804_171949.png
我们可以看到推送printer.go的内容已经修改为Hello World

Screenshot_20230804_172332.png

不同分支间的合并

新建一个分支

Screenshot_20230804_172113.png Screenshot_20230804_172120.png

修改文件

Screenshot_20230804_172159.png

Screenshot_20230804_172210.png 我们将Hello World 换成了Hello JiangHuDao Screenshot_20230804_172228.png

推送修改

可以看到已经检测到当前的修改状态

Screenshot_20230804_172304.png Screenshot_20230804_172425.png Screenshot_20230804_172534.png
Screenshot_20230804_172332.png Screenshot_20230804_172617.png 我们push完之后发现github上的printer中的内容没有改变,这是因为该改变只存在与jianghudao的分支,我们需要合并分支

合并分支

首先我们切换到main主分支
Screenshot_20230804_172929.png 使用:

git merge feature-branch

执行合并:
Screenshot_20230804_172958.png
提交:

Screenshot_20230804_173034.png
推送:

Screenshot_20230804_173108.png

内容已经修改: Screenshot_20230804_173126.png 分支已经合并: Screenshot_20230804_173119.png

Git 最佳实践:团队协作和版本控制

Git 是一个分布式版本控制系统,它允许用户跟踪代码的更改,并与其他用户协作开发。Git 有许多最佳实践,可以帮助用户提高效率和可靠性。

在团队协作中使用 Git

在团队协作中,使用 Git 可以帮助用户管理代码的更改,并防止冲突。Git 还可以帮助用户跟踪代码的版本,并在需要时恢复到以前的版本。

以下是一些在团队协作中使用 Git 的最佳实践:

  • 使用分支进行开发。分支允许用户在不同的代码库中进行开发,并在需要时合并分支。这可以帮助避免冲突,并使开发更有组织。
  • 使用标签标记特定的代码版本。标签可以帮助用户跟踪代码的特定版本,并在需要时恢复到该版本。这可以帮助跟踪代码的更改历史,并在出现问题时快速恢复。
  • 使用 Git 的审查功能进行代码审查。代码审查可以帮助用户发现代码中的错误和缺陷,并提高代码质量。这可以帮助提高代码的稳定性和可靠性。
  • 使用 Git 的持续集成功能进行自动化测试。持续集成可以帮助用户自动测试代码,并在代码中出现错误时及时发现。这可以帮助提高代码的质量和可靠性。

在版本控制中使用 Git

在版本控制中,使用 Git 可以帮助用户跟踪代码的更改,并防止丢失数据。Git 还可以帮助用户在需要时恢复到以前的版本,并测试新代码。

以下是一些在版本控制中使用 Git 的最佳实践:

  • 使用 Git 的 git add 命令将更改添加到暂存区。暂存区是将要提交到仓库的更改集合。
  • 使用 Git 的 git commit 命令将更改提交到仓库。提交是将更改永久保存到仓库的操作。
  • 使用 Git 的 git branch 命令创建分支。分支是代码库的副本,可以用于开发新功能或测试新代码。
  • 使用 Git 的 git merge 命令合并分支。合并是将两个分支的更改合并到一个分支的操作。
  • 使用 Git 的 git tag 命令标记特定的代码版本。标签可以帮助用户跟踪代码的特定版本,并在需要时恢复到该版本。
  • 使用 Git 的 git log 命令查看代码更改历史。这可以帮助跟踪代码的更改历史,并在出现问题时快速恢复。
  • 使用 Git 的 git reflog 命令查看 Git 的命令历史。这可以帮助恢复意外删除的文件或更改。

使用 Git 的最佳实践可以帮助用户提高效率和可靠性。通过使用 Git,用户可以轻松地管理代码的更改,并与其他用户协作开发。Git 还可以帮助用户跟踪代码的版本,并在需要时恢复到以前的版本。

个人开发

Git 不仅适用于团队协作,也适用于个人开发。Git 可以帮助个人开发者跟踪代码的更改,并防止丢失数据。Git 还可以帮助个人开发者在需要时恢复到以前的版本,并测试新代码。

以下是一些在个人开发中使用 Git 的最佳实践:

  • 使用分支进行开发。分支允许个人开发者在不同的代码库中进行开发,并在需要时合并分支。这可以帮助避免冲突,并使开发更有组织。
  • 使用标签标记特定的代码版本。标签可以帮助个人开发者跟踪代码的特定版本,并在需要时恢复到该版本。这可以帮助跟踪代码的更改历史,并在出现问题时快速恢复。
  • 使用 Git 的审查功能进行代码审查。代码审查可以帮助个人开发者发现代码中的错误和缺陷,并提高代码质量。这可以帮助提高代码的稳定性和可靠性。
  • 使用 Git 的持续集成功能进行自动化测试。持续集成可以帮助个人开发者自动测试代码,并在代码中出现错误时及时发现。这可以帮助提高代码的质量和可靠性。

总结

Git 是一个分布式版本控制系统,它允许用户跟踪代码的更改,并与其他用户协作开发。Git 有许多最佳实践,可以帮助用户提高效率和可靠性。

在团队协作中,使用 Git 可以帮助用户管理代码的更改,并防止冲突。Git 还可以帮助用户跟踪代码的版本,并在需要时恢复到以前的版本。

在版本控制中,使用 Git 可以帮助用户跟踪代码的更改,并防止丢失数据。Git 还可以帮助用户在需要时恢复到以前的版本,并测试新代码。

Git 可以帮助开发人员提高效率和可靠性。通过遵循最佳实践,开发人员可以充分利用 Git 的功能,并创建高质量的软件。