我有2台计算机,一台在办公室,一台在家中,我们使用git进行版本控制,我想用它来同步我的作品,这些作品通常甚至都没有准备好进行小型提交,所以我不知道想在我们的gitlab服务器中留下提交消息。我想到的第一个想法是git stash,我可以git stash
当前的工作吗?并将存储推送到远程服务器。然后在另一台计算机中拉出git stash并通过git pop恢复工作。类似的东西:
这不完全是步骤,但你可以得到我的想法。
第1步:在计算机办公室
git stash
git push (the stash contents)
第2步:在计算机主页
git pull # pull the stash contents
git stash pop # pop the difference I already git stash in the Computer-office
# some modified, new files and delete some files.
git stash
git push (the stash contents)
第3步:在计算机办公室
git pull # pull new stash content at home
git commit # the final commit
答案 0 :(得分:2)
Stash用于本地存储,除非您使用其他工具(dropbox等)传输.git文件,否则无法将其推送到远程。
一种方法是将ur repo放入dropbox,然后使用dropbox同步未提交的更改。
如果不是,你只需要提交并推送到远程,然后重新绑定以将次要提交压缩为单个提交,然后强制推送到远程,以便您的提交历史记录保持整洁。
您也可以git reset --soft HEAD~
删除历史记录中的最后一次提交,但保留本地仓库中的更改,这几乎就是您尝试使用存储来完成的。
答案 1 :(得分:1)
如“Is git stash stack pushed to the remote repo?”中所述,无法推送存储。
因此,在新的“wip”(正在进行中)分支中创建提交,并推送该分支是将一个人的工作保存到远程服务器的最可靠方法。
在其他地方,您可以将该分支合并或挑选或重新绑定到旧分支上。