我的本地文件夹中有一个Visual Studio解决方案。我已经有.gitignore
了。现在我正在寻找一些方法,考虑到`.gitignore'文件。
我已经知道本地文件夹中的init
存储库以及如何将其推送到git文件夹。但我需要一些解决方案,如何仅推送不在`.gitignore'上的文件。
有没有办法存在?
答案 0 :(得分:0)
git只会考虑.gitignore
中不存在的文件,除非您已经提交了该文件。
如果您已完成提交,则可以执行
git rm -r --cached <file_name>
将停止跟踪.gitignore
内的文件。
您必须在遥控器上创建一个裸存储库:
git init --bare
用于设置本地存储库的远程:
git remote add origin REMOTE_URL
推送所有本地更改:
git push origin master
答案 1 :(得分:0)
通常,当您提交时,Git不会向您显示与.gitignore
中的模式匹配的任何文件。所以简单推送应该已经做你想要的(因为文件不应该在回购中)。
如果您不小心(或故意)提交了Git通常忽略的文件,那么就无法推送“其他所有内容”。 Git为提交创建安全的校验和,因此如果省略某些部分,则校验和将不匹配,远程服务器将拒绝推送。
在这种情况下,最简单的解决方案是在本地删除文件并提交此更改。这些文件仍然可以通过历史记录显示和访问(例如,当您返回时,文件将会显示)但是对于新的结帐,它们将会消失。
如果您确实需要删除该文件但尚未推送,请参阅此问题如何修改本地历史记录:Remove a file from git which is not pushed yet but also not in latest commit?