我正在开发一个Rails项目!
不添加.gitignore
我不小心承诺并推动了database.yml
'进入我的功能分支。几天前从feature
分支到master
分支创建了一个拉取请求,但尚未合并。作为此拉取请求的一部分,多次提交已完成,并且提交包含' database.yml'是最后一次提交。
其他人也在作为这个项目的一部分工作,他们正在将变更合并到主人,我们正在将这些变化拉到我们之间的功能分支。因此,在我们的功能分支中,我们得到了其他人的提交,这些提交是在错误提交之后完成的。
所以我希望做一个' git rm
'和' git push
'再次使用相同的文件来解决此问题(因为PR尚未合并)。这会产生问题吗?
答案 0 :(得分:5)
如果你移除了database.yml
那将是另一个提交,并且没有人会受到影响。
但请注意,database.yml
仍然是历史记录的一部分,可以通过git log
访问。如果该文件包含敏感信息,则其他人可以找到它。
答案 1 :(得分:0)
从本地系统中删除该文件,然后使用更改将更改添加到提交
git add <FILE_PATH>
命令,然后提交并推送更改,它应该没问题。
答案 2 :(得分:0)
正确删除它的正确方法是撤消对文件所做的更改并提交它。
另一种更脏的方法是打开提交并删除更改并强制将其推送到repo。但是你需要适当的权利。如果他们试图改变那些,其他人也会遇到问题。