Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/24.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
主分支上缺少gitignore-如何“修复”它?_Git - Fatal编程技术网

主分支上缺少gitignore-如何“修复”它?

主分支上缺少gitignore-如何“修复”它?,git,Git,在向master branch结账时,我得到: 错误:以下未跟踪的工作树文件将被覆盖 通过结帐: nbproject/private/config.properties nbproject/private/private.properties nbproject/private/private.xml nbproject/project.properties nbproject/project.xml Please move or remove them before you can switc

在向master branch结账时,我得到:

错误:以下未跟踪的工作树文件将被覆盖 通过结帐: nbproject/private/config.properties nbproject/private/private.properties nbproject/private/private.xml nbproject/project.properties nbproject/project.xml

Please move or remove them before you can switch branches.  

Aborting
所以我把它们删除了,我把这些文件备份到了回购协议之外的其他地方,我可以再次切换

我得到这个的原因是:

dev正在忽略这些文件。 master不存在,因为不存在.gitignore文件

他们都应该忽略这些文件

另外,当我将此推送到远程repo时,这些更改也应该传播到这些远程repo

我们如何才能将该.gitignore文件添加到主文件中,这样就不会再次发生这种情况?

添加一个.gitignore文件与添加任何其他文件相同。创建它,以及要忽略的内容,然后添加并提交它。您可以通过以下方式忽略这些文件:

echo /nbproject/private/config.properties >> .gitignore
echo /nbproject/private/private.properties >> .gitignore
echo /nbproject/private/private.xml >> .gitignore
echo /nbproject/project.properties >> .gitignore
echo /nbproject/project.xml >> .gitignore

git add .gitignore
git commit -m "Add some ignores."
您可能需要对所有受影响的分支执行相同的操作

但是,你确实还有别的事情要做。git告诉您这些文件有问题,这并不是因为它们在主分支上被忽略了。。。这是因为他们一直致力于你的主分支。瞧,他们现在处于版本控制之下。我认为您不仅需要忽略它们,还可能需要从版本控制中删除它们。这将是您可能希望与您的团队协调的事情,以便master上的任何人都知道这些文件将消失,并且他们可以提前备份它们

更新:我和MEM聊过这件事。我们最终修复了他的存储库,制作了另一个克隆,签出master,通过git show dev:.gitignore>.gitignore从他的dev分支添加.gitignore,然后通过git fetch/path/to/fix master:master将该版本恢复到他的原始项目中。一旦他有了新版本,我们就把它推到远程,这样其他人也会有它。

添加一个.gitignore文件与添加任何其他文件一样。创建它,以及要忽略的内容,然后添加并提交它。您可以通过以下方式忽略这些文件:

echo /nbproject/private/config.properties >> .gitignore
echo /nbproject/private/private.properties >> .gitignore
echo /nbproject/private/private.xml >> .gitignore
echo /nbproject/project.properties >> .gitignore
echo /nbproject/project.xml >> .gitignore

git add .gitignore
git commit -m "Add some ignores."
您可能需要对所有受影响的分支执行相同的操作

但是,你确实还有别的事情要做。git告诉您这些文件有问题,这并不是因为它们在主分支上被忽略了。。。这是因为他们一直致力于你的主分支。瞧,他们现在处于版本控制之下。我认为您不仅需要忽略它们,还可能需要从版本控制中删除它们。这将是您可能希望与您的团队协调的事情,以便master上的任何人都知道这些文件将消失,并且他们可以提前备份它们


更新:我和MEM聊过这件事。我们最终修复了他的存储库,制作了另一个克隆,签出master,通过git show dev:.gitignore>.gitignore从他的dev分支添加.gitignore,然后通过git fetch/path/to/fix master:master将该版本恢复到他的原始项目中。一旦他有了新版本,我们就把它推到遥控器上,这样其他人也会有它。

@jzakmeister请继续关注我。我发现很难解决这个问题。我可以请求聊天吗?我会试着。。。但是我的孩子们可能很快就要起床了。@jzakmeister请跟我一起做这件事。我发现很难解决这个问题。我可以请求聊天吗?我会试着。。。但我的孩子们很快就要起床了。