在两个不同的设备上工作/不污染仓库

时间:2019-01-28 09:34:17

标签: git version-control

我是GitHub(公共存储库)上托管的开源项目的维护者。

由于我当前的工作模式,我必须在源代码上的多个设备上工作。这导致我不得不在两个设备之间切换以继续编码的情况。

返回后,当我拥有私有存储库时,我将只提交到develop分支(或与此相关的任何功能分支),并在一个设备上推送到origin,并基于另一设备拉/重新建立基础。没有有意义的提交消息,在某些情况下没有可构建状态。

现在,在公共存储库上工作,我不想“污染”分支机构,所以我想知道:什么是最佳的操作过程?

有没有人对我有好的建议?

2 个答案:

答案 0 :(得分:2)

如果您可以创建私有GitHub存储库:

设置

  1. 创建新的私有GitHub存储库,例如example/example-private
  2. 在从公共存储库克隆的本地存储库中,添加新的远程源:
$ git remote add origin-private https://github.com/example/example-private.git
  1. 将所有本地存储库推送到专用存储库:
$ git push origin-private

使用专用存储库进行开发。

  1. 创建私有分支:
$ git checkout -b develop-private
  1. 推送到私有存储库:
$ git push -u origin-private develop-private`

现在您可以通过私有存储库与多台设备共享develop-private

私下开发完成时

  1. develop-private分支与您的公共开发分支合并或重新建立基础。
  2. 将其推送到公共开发分支

答案 1 :(得分:0)

问题是,例如,您不想提交未完成的工作。如果我遇到您的情况,我会以这种方式进行。

  1. git add .
  2. git commit -m "work in progress, don't checkout from this commit

当您在另一台设备上时,下载在第一台设备上所做的更改后。我会的。

  1. git reset --soft HEAD~1

这样一来,您就可以在另一台设备上进行工作,并且公共存储库中没有无用的提交。