我对git存储库中的文件进行了一些更改.在我提交任何内容之前,我被要求提交其他人为我提供的其他文件(来自SVN存储库).我将这些文件放入我的项目文件夹中,从之前的所有已更改文件中选择它们并提交它们.现在我需要同步分支以使这些移动到Github但是当我尝试同步时,我得到"未提交的更改.请在同步之前提交您的更改".
我假设这是指我之前更改过的所有文件?但是,我不希望那些人如此承诺......他们还没准备好.我只想提交这个小的文件子集.在这种情况下,人们做了什么?我如何移动我所做的所有更改,我不想成为此提交的一部分,因为缺少更好的单词,并获得我想要更改为github存储库的部分?
我正在使用GitHub应用程序,但如果需要可以从命令行执行...只是不确定需要做什么.
以下是一些更清晰的屏幕截图:
在我更改的文件列表的底部是我要移动的提交:
尝试将该提交转移到github我单击"同步"按钮并获取:
解决办法是什么?如何将这些"未提交的更改"排除在外?显然我是git的新手,所以我不清楚正确的方法.谢谢.
我不知道GitHub应用程序是否提供了这个功能(虽然我会期待它),但是git有一个名为"git stash"的函数,它可以获取所有未提交的更改并将它们存放在一个特殊的位置.这将为您留下原始的工作副本(没有这些更改),您可以在其中执行任何操作,然后使用git stash pop
(或git stash apply
)重新应用未提交的更改.我鼓励您阅读该联机帮助页.
在GitHub for Mac GUI客户端中,转到存储库 > 推入菜单栏.
这会将任何未同步的提交上传到GitHub服务器.由于这不会下载任何新代码,GitHub客户端不会强制您提交所有更改.如果您有一堆未准备好提交的本地更改,但是您还有几个可以提交的本地更改,这将非常有用.
这似乎比以前建议的涉及git命令行界面的答案(虽然在概念上等同)更容易.