我正在学习如何在 git 中进行合并,有 2 个好的实践可以帮助您(如果您也是像我一样的新开发人员)最大程度地减少搞乱 git 历史记录的可能性。
从主分支测试合并:当您在主分支上工作并想要合并功能分支,但又想避免破坏主分支的任何风险时,您可以创建测试合并分支。该分支将具有与主分支相同的状态,本质上充当克隆。然后,您可以在这个新分支上执行合并和任何必要的测试。如果出现问题,原始主分支保持不变,测试分支可以安全删除。
跨分支合并以实现协作工作:当多个开发人员在不同的分支(例如后端和前端)上工作时,并且您想要验证两个分支的代码是否正确集成时,您可以在自己的工作分支中创建一个测试分支(例如,在本例中您正在后端分支上工作)。例如,创建一个名为 test-frontend 的分支,在其中合并前端分支以查看代码是否按预期工作。如果合并成功并且您想与 main 集成,请保留在 test-frontend 分支并将其与 main 合并。验证所有内容后,返回主分支并与 test-frontend 分支执行快进合并。这种方法降低了将问题引入主分支的风险,同时确保顺利集成。
合并到主分支后,git 将创建一个合并提交,该提交具有两个父提交:一个来自现有主分支,另一个来自测试分支。如果您稍后决定撤消合并,您可以通过运行以下命令轻松地将主分支重置为合并之前的状态:
git checkout -B origin/main
此命令重置主分支以匹配 origin/main 的状态(远程主分支当前指向的提交)。之所以是 origin/main 是因为,在 git 中,分支默认是本地的。如果您尚未推送更改,它们将保留在您的本地计算机上。 origin/main 引用指向远程主分支上最后一次已知的提交,允许您安全地恢复到该状态。