Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
GitHub-未同步提交?_Git_Github - Fatal编程技术网

GitHub-未同步提交?

GitHub-未同步提交?,git,github,Git,Github,我对git存储库中的文件做了大量更改。在我提交任何东西之前,我被要求提交其他人给我的一些其他文件(来自SVN存储库)。我把这些文件放到了我的项目文件夹中,从之前所有更改过的文件中选择并提交它们。现在,我需要同步分支以将其移动到Github,但当我尝试同步时,会得到“未提交的更改。请在同步之前提交您的更改” 我想这是指我以前更改过的所有文件?然而,我不想让那些人如此执着。。。他们还没有准备好。我只想提交这一小部分文件。在这种情况下我们该怎么办?我如何将我所做的所有更改转移到github存储库中,因

我对git存储库中的文件做了大量更改。在我提交任何东西之前,我被要求提交其他人给我的一些其他文件(来自SVN存储库)。我把这些文件放到了我的项目文件夹中,从之前所有更改过的文件中选择并提交它们。现在,我需要同步分支以将其移动到Github,但当我尝试同步时,会得到“未提交的更改。请在同步之前提交您的更改”

我想这是指我以前更改过的所有文件?然而,我不想让那些人如此执着。。。他们还没有准备好。我只想提交这一小部分文件。在这种情况下我们该怎么办?我如何将我所做的所有更改转移到github存储库中,因为没有更好的词,我不想成为这次提交的一部分

我正在使用GitHub应用程序,但如果需要,可以从命令行执行。。。只是不确定需要做什么


以下是一些屏幕截图,以使其更清晰:

在我更改的文件列表的底部是我要移动的提交:

尝试将提交转移到github时,我单击“同步”按钮并获取:


解决办法是什么?我怎样才能避免这些“未提交的更改”?显然,我是git新手,所以我不清楚正确的方法。谢谢。

我不知道GitHub应用程序是否提供了这一功能(尽管我有点期待),但git有一个名为“git stash”的函数,它可以接收所有未提交的更改,并将它们隐藏在一个特殊的位置。这就为您留下了一个原始的工作副本(没有这些更改),您可以在其中执行任何需要的操作,然后使用
git stash pop
(或
git stash apply
)重新应用未提交的更改。我鼓励您阅读。

思考下面的讨论


可能有助于读者了解此问题。

在Mac的GitHubGUI客户端中,转到菜单栏上的存储库推送

这将把任何未同步的提交上传到GitHub服务器。由于这不会下载任何新代码,GitHub客户端不会强制您提交所有更改。如果有一组本地更改尚未准备好提交,但也有几个本地更改准备好提交,那么这将非常有用


这似乎比之前建议的涉及git命令行界面的答案更容易(尽管在概念上相当于)。

完美。谢谢,凯文。我最近使用git的时间比较长,但作为svn的长期用户,我通常就是这样使用它。很明显,这并不理想,但它一直有效,直到“不同”的事情发生,我被抓住为止。这是其中的一个“我一有空就会读这篇文章”,然后,已经一个月没有空气了。@gaoshan88:虽然git肯定可以在类似svn的模式下使用,但我强烈建议你花一个晚上的时间,开始学习更类似git的做事方式。git有很多强大的功能和灵活性,一旦你学会了如何使用它做更多的事情,你就再也不想回到svn的约束了。坦白地说,我讨厌这样一个事实,我不得不隐藏我的更改,然后再进行手动合并。