6

如果有人不介意回答,另一个 Git 问题:

我在办公室的桌面上开发网站,在家工作时在笔记本电脑上开发网站,既将文件存储在本地驱动器上,又使用在线 Git 存储库进行跟踪。

当我在家中从笔记本电脑创建新功能时,将这些更改转移到桌面的最佳方式是什么 - 我是否会暂存更改,为它们创建提交,然后将它们推送到在线存储库,即使功能仍然不完整,还是有更好的方法?

我真的不确定是否在功能分支上创建新提交只是为了将更改推送到存储库,以便我可以在办公室时获取更改是正确的方法,但也许我错了。 ..?

4

2 回答 2

9

每当您创建新功能或修复错误时,您都应该使用新分支——您可能已经在这样做了。

我只会在本地功能分支上提交您的更改并将更改推送到您的远程功能分支,然后将它们拉到您的另一台机器上,这没有问题......

如果您想在将它们合并到 master 之前整理您的提交,那么您可以压缩它们......请参阅这个问题:使用 Git 将我最后的 X 提交一起压缩

于 2013-06-28T09:02:48.197 回答
-4

我有完全相同的问题,并使用Dropbox来保持我的两台计算机同步,但我确信任何其他文件同步服务(如 Google Drive 或 Box)也可以工作(请参阅此处的竞争对手列表)。只需将本地 git 存储库放在 Dropbox 文件夹中,Dropbox 将确保您在一台机器上更改的任何内容也会在另一台机器上更改。这包括未暂存或未跟踪的更改,以及切换分支或提交某些内容时。

与推送到存储库相比,这种方法的优点是其他开发人员看不到您的更改,并且如果您确实想修复本地分支的历史记录,您不会为其他用户破坏事情。

只有一个警告:您必须先完成同步,然后再开始在另一台机器上工作。如果您一直在使用机器 A 并想切换到机器 B,则必须让 Dropbox 完成从机器 A 上传所有更改,并让机器 B 下载所有更改,然后再开始使用机器 B。如果您不,您最终会遇到一些有趣但有时是灾难性的 Dropbox 合并冲突。这通常是您可以从中恢复的东西,但您也可能会丢失任何未推送到远程存储库的东西。话虽如此,这是一个很容易避免的问题。

于 2013-06-28T15:39:41.677 回答