GitFlow:有没有办法让我的本地 master/develop 分支自动与远程分支保持同步?
GitFlow: Is there a way to automatically keep my local master/develop branches synced with remote branch?
我的工作流程如下:
- 签出
develop
的新分支 feature/foo
。
- 实施此功能
- 推
feature/foo
Github
- 通过 GitHub 合并请求菜单将此功能合并到
develop
分支。
通常,我从不将任何提交合并到本地master/develop 分支。
我有两个本地分支,它们总是从原点拉,从不被推。
- 高手
- 发展
我的问题是,有没有什么软件或者命令行工具可以让这两个分支在一定的时间间隔内自动同步到源站并保持最新,这样我就不用手动拉取它们了,节省了时间.
您可以编写一个小脚本来自动化它。但是,如果您的分支在尝试合并回来时与 develop
发生合并冲突,您会怎么做?你是怎么解决的?理想情况下,您应该将开发中的更改引入您自己的分支,确保它有效,然后将其推回而不是依赖自动化或 GitHub 网站控件。
在您的本地开发和主控是远程 "slaves" 的情况下,我发现删除本地分支并从获取的远程分支重新创建它会更快。我什至在团队工作时这样做,我们确实在本地合并到开发中。在合并之前,我放弃了开发并从 origin/develop
中再次检查它,并与其他团队成员一起获取了最新的更改。
大多数客户端(SourceTree、Git Extensions、Tower)都具有自动获取功能。因此,您只需要从本地获取的远程分支编写 "delete and create-branch" 脚本,该分支将始终保持新鲜。
正如其他人提到的,冲突问题意味着没有软件会包含自动拉取(获取 + 合并)。但是自动提取本身是没有风险的,所以大多数都包含它。
但是 - 如果您永远不会使用它,为什么还要费心保留本地分支机构呢?
为什么不直接从远程分支创建本地功能分支?
例如您改为从 origin/develop
创建一个新分支 feature/foo
。通过自动获取,它将始终是最新的。
我的工作流程如下:
- 签出
develop
的新分支feature/foo
。 - 实施此功能
- 推
feature/foo
Github - 通过 GitHub 合并请求菜单将此功能合并到
develop
分支。
通常,我从不将任何提交合并到本地master/develop 分支。
我有两个本地分支,它们总是从原点拉,从不被推。
- 高手
- 发展
我的问题是,有没有什么软件或者命令行工具可以让这两个分支在一定的时间间隔内自动同步到源站并保持最新,这样我就不用手动拉取它们了,节省了时间.
您可以编写一个小脚本来自动化它。但是,如果您的分支在尝试合并回来时与 develop
发生合并冲突,您会怎么做?你是怎么解决的?理想情况下,您应该将开发中的更改引入您自己的分支,确保它有效,然后将其推回而不是依赖自动化或 GitHub 网站控件。
在您的本地开发和主控是远程 "slaves" 的情况下,我发现删除本地分支并从获取的远程分支重新创建它会更快。我什至在团队工作时这样做,我们确实在本地合并到开发中。在合并之前,我放弃了开发并从 origin/develop
中再次检查它,并与其他团队成员一起获取了最新的更改。
大多数客户端(SourceTree、Git Extensions、Tower)都具有自动获取功能。因此,您只需要从本地获取的远程分支编写 "delete and create-branch" 脚本,该分支将始终保持新鲜。
正如其他人提到的,冲突问题意味着没有软件会包含自动拉取(获取 + 合并)。但是自动提取本身是没有风险的,所以大多数都包含它。
但是 - 如果您永远不会使用它,为什么还要费心保留本地分支机构呢? 为什么不直接从远程分支创建本地功能分支?
例如您改为从 origin/develop
创建一个新分支 feature/foo
。通过自动获取,它将始终是最新的。