git - git cherry-pick 从一个远程到另一个远程导致不同的提交 ID
问题描述
我有两个远程存储库remoteA
和remoteB
另一个(一个是镜像)。我提交了一项更改,remoteA
并且我还计划对remoteB
.
我可以使用以下命令将更改从remoteA
to 移植到remoteB
:
git push remoteB COMMIT_HASH_FROM_REMOTEA:mainline
另一种方法是我可以git cherry-pick
用来选择COMMIT_HASH_FROM_REMOTEA
本地分支跟踪remoteB
分支,然后推送此提交。
我注意到如果我使用第一种方法,两个遥控器的提交 ID 将是相同的。但是对于第二种方法,提交 ID 是不同的。
git 是否足够聪明,可以在第二种方法下找出不同的提交 ID 实际上是相同的?换句话说,如果我使用第二种方法将更改推送到remoteB
,这是否会给其他人带来任何麻烦(例如:合并冲突),因为 git 以某种方式认为这两个遥控器开始分歧?
谢谢你。
解决方案
所以你有两个带有相同代码副本的远程存储库?至少可以说,这有点令人困惑。这些分支是不是单独的存储库?
我认为您不应该在您可能已经拥有的任何内容之上遇到由此引起的额外合并冲突的问题,但是您可以使用一些替代策略(可能使用git reset
命令行参数)来缓解您的哈希问题。
推荐阅读
- c# - 为什么 NumberFormatInfo 在 Azure 环境中的行为不同?
- shell - iptables 规则是否正确?
- amazon-web-services - cloudformation 部署的 UI5 Web 应用,如何创建 SSM 参数以便以后可以访问?
- rust - 在使用 lto=true 构建 Rust 二进制文件时,有没有办法限制链接器检查的 crate?
- python - 在 Python 中一对一比较两个列表
- css - Bootstrap DateTimePicker:数字列之间的空间
- python - 模拟类函数应该被调用一次,但 call_count == 0?
- php - 调用字符串上的成员函数(但函数返回字符串)PHP
- sql - 如果最新记录状态匹配,则更新所有其他记录
- c# - 使用 RabbitMq 的 MassTransit 在发生错误时未重试