git - 同步两个 git 存储库
问题描述
我有一个 git 存储库,我正在将更改推送到远程 X。现在,我创建了另一个 git 远程(不同的存储库),我也想将更改推送到它。理想情况下,我想保持两个同步。通过对其中一个进行更改并推动另一个。
我将新的遥控器添加到我的 git 中。我进行了提交并将所有更改推送到一个存储库(源)但是当我尝试推送更改时:
git push my-new-remote-origin my_current_branch:master
我收到此错误:
error: src refspec my_current_branch does not match any
error: failed to push some refs to <NEW_GIT_REPO_ADDRESS>
我的解决方案正确吗?为什么会失败(我应该指定要推送的提交吗?)
解决方案
你应该使用--mirror
. 这将同步您的新存储库。
不是命名要推送的每个 ref,而是指定将 refs/ 下的所有 refs(包括但不限于 refs/heads/、refs/remotes/ 和 refs/tags/)镜像到远程存储库。新创建的本地 refs 会被推送到远端,本地更新的 refs 会在远端强制更新,删除的 refs 会从远端移除。如果设置了配置选项 remote..mirror,这是默认设置。
使用以下命令:
git push --mirror my-new-remote-origin
在此处找到的文档。
推荐阅读
- java - 如何从 ListView 中删除一个项目并在 Firebase 上删除它?
- html - 为什么“字体粗细”适用于“选择”元素的选定“选项”,而“颜色”不适用?
- python - 使用其中一个 DataFrame 的列名合并两个 DataFrame
- r - 填补空白,具体取决于缺失值的长度以及 R 中最后一个和上一个已知值
- python - 如何在python中平滑后反卷积
- angular - Angular 8 Videojs 不适用于移动浏览器(在 Android 和 iOs 中)
- android - 如何在 Kotlin 中使用 Google Drive Rest API v3
- sql - Postgres 删除完全外连接
- xslt - 基于参数的 XSLT 动态求和
- reactjs - 功能组件反应的单元测试