使用版本控制时,保存代码版本以及与团队共享代码版本是最常见的操作。 Git 为这些任务提供了简易的三步工作流:
- 创建新的工作分支
- 提交更改
- 推送分支以与团队共享
通过 Git,可轻松使用分支来管理工作。 每个 bug 修复、新功能、添加的测试和更新的配置均以新分支开始。 分支是开发计算机的轻量级和本地分支,因此在推送分支之前,无需担心资源的使用或更改的协调。
通过分支,可独立于开发中的其他更改来编写代码。 一切正常后,分支及其更改将与团队共享。 其他人可在自己的分支副本中试验代码,而不会影响自己分支中正在进行的工作。
启动新工作时,根据当前分支中的代码创建分支,例如 main
。 创建新分支之前,最好先使用 git status
来检查选择了哪个分支。
使用 git branch
命令在 Git 中创建分支:
> git branch <branchname>
在存储库中的分支之间进行交换的命令为 git checkout
。 创建分支后,在保存更改之前切换到该分支。
> git checkout <branchname>
Git 有一个简写命令,可用于创建分支并同时切换到该分支:
> git checkout -b <branchname>
详细了解如何在 GitHub 或 Azure DevOps 中使用 Git 分支。
Git 不会在进行编辑时自动创建快照代码。 必须准确告知 Git 要添加到下一快照的更改。 这被称为暂存。 暂存更改后,创建提交以永久保存快照。
Git 可跟踪存储库中出现的文件更改。 它将这些更改分为三个类别:
- 未修改的文件:自上次提交以来未更改的文件。
- 已修改的文件:自上次提交以来已发生更改,但尚未暂存以用于下一次提交的文件。
- 已暂存的文件:已更改并会添加到下一次提交中的文件。
创建提交时,快照仅使用已暂存的更改和未更改的文件。 未暂存的更改将保留在文件系统上,但提交会使用其快照中的未修改文件。
通过创建提交在 Git 中保存更改。 每个提交都会在每个提交中存储存储库的完整文件内容,而不仅仅是单个文件更改。 此行为与其他版本控制系统不同,这些系统会存储来自最后版本代码中的文件级差异。 通过完整文件历史记录,Git 在合并更改时可做出更好的决策,并使代码分支之间的切换异常快速。
使用 git add
来暂存更改从而添加更改的文件、使用 git rm
可删除文件,使用 git mv
则可移动文件。 然后,使用 git commit
命令创建提交。
通常,开发人员想暂存存储库中所有已更改的文件:
> git add –all
然后,使用简短说明提交这些更改:
> git commit -m "Short description of changes."
每个提交都有描述其更改的消息。 良好的提交消息可帮助开发人员记住他们在提交中所做的更改。 良好的提交消息也便于其他人查看提交。
了解有关在 Visual Studio 或 Visual Studio Code 中暂存文件和提交更改的详细信息。
无论是在团队中工作还是只想备份自己的代码,开发人员均需在其他计算机上与存储库共享提交。 使用 git push
命令从本地存储库获取提交,并将其写入远程存储库。 Git 会在克隆的存储库中设置,从而连接到克隆的源,它也称为 origin
。 运行 git push
将当前分支上的本地提交写入此源存储库上的其他分支 (分支名称)。 如果不存在,Git 会在远程存储库上创建分支名称。
> git push origin
如果在使用 git init
于本地系统上创建的存储库中进行操作,则需在推送更改之前设置与团队 Git 服务器的连接。 详细了解如何在 Visual Studio 或 Visual Studio Code 中设置远程对象和推送更改。
将本地分支推送到团队的共享存储库可让团队的其余成员访问其更改。 首次运行 git push
时,添加 -u
选项会告知 Git 从 origin
存储库到分支名称开始全程跟踪本地分支。 在此一次性跟踪信息设置完成后,团队成员可使用 git push
直接快速、轻松地共享更新。
> git push origin <branchname>
详细了解 GitHub 或 Azure DevOps 中的分支。
详细了解如何在 Visual Studio 或 Visual Studio Code 中推送提交和分支。