Git 克隆一个克隆但只从第一个克隆更新远程
Git clone a clone but only update remote from 1st clone
我有这样的情况,我有 2 台家用电脑,但只有 1 台被允许访问托管远程存储库的远程机器,由于各种原因我无法在这台机器上工作。
我想做的是:
远程回购 -> 克隆 1 -> 克隆 2(做我的工作),然后
克隆 2 -> 克隆 1 -> 远程仓库。
我想处理克隆 2,推送到克隆 1,然后将克隆 1 推送回远程存储库。
我可以做克隆的克隆,但是当我尝试推回克隆 1 时,我收到一条错误消息,指出主节点已检出,我无法推送到它。
什么是最干净的方法来完成我正在尝试实现的目标,我对 git 比较陌生(我当前的解决方案只是复制克隆 1,进行更改然后将其复制回来并更新 - 但是这会导致各种问题)。
我一直在使用 sourcetree & tortoisegit,但不介意一些命令行工作
干杯
冰
创建克隆 1 时,使用 git clone --bare
创建一个裸存储库。由于您不修改和提交克隆 1 中的文件,因此无需签出克隆 1 中的分支。裸存储库足以作为中转站。
如果您确实需要克隆 1 的非裸存储库,请在克隆 1 中 运行 git config receive.denyCurrentBranch false
,这样它就不会阻止您推送到已签出的分支。 false
也可以是 warn
或 ignore
.
我不熟悉任何 git GUI,但我猜他们支持裸克隆和 git 配置。
我有这样的情况,我有 2 台家用电脑,但只有 1 台被允许访问托管远程存储库的远程机器,由于各种原因我无法在这台机器上工作。
我想做的是: 远程回购 -> 克隆 1 -> 克隆 2(做我的工作),然后 克隆 2 -> 克隆 1 -> 远程仓库。
我想处理克隆 2,推送到克隆 1,然后将克隆 1 推送回远程存储库。
我可以做克隆的克隆,但是当我尝试推回克隆 1 时,我收到一条错误消息,指出主节点已检出,我无法推送到它。
什么是最干净的方法来完成我正在尝试实现的目标,我对 git 比较陌生(我当前的解决方案只是复制克隆 1,进行更改然后将其复制回来并更新 - 但是这会导致各种问题)。
我一直在使用 sourcetree & tortoisegit,但不介意一些命令行工作
干杯
冰
创建克隆 1 时,使用 git clone --bare
创建一个裸存储库。由于您不修改和提交克隆 1 中的文件,因此无需签出克隆 1 中的分支。裸存储库足以作为中转站。
如果您确实需要克隆 1 的非裸存储库,请在克隆 1 中 运行 git config receive.denyCurrentBranch false
,这样它就不会阻止您推送到已签出的分支。 false
也可以是 warn
或 ignore
.
我不熟悉任何 git GUI,但我猜他们支持裸克隆和 git 配置。