今天我遇到了一些我无法解释的奇怪情况,并担心这将在未来造成很多麻烦。
我和我的同事,我们正在开发网站。我们正在使用GIT,今天合并后我们发现这些样式没有出现在网站上。在查看git日志后,我们看到我的提交在哪里重写font.css文件,并在旧变种上更改字体urls路径(我的错)。他再次在git上推送他对font.css的更改。我看到他的提交,拉它,但我的font.css没有改变(仍旧使用旧网址)。好吧,我改变了自己,把它推到了git上。当我的同事拉它时,他有自己的font.css版本,而不是我的版本。我们正在使用bitbucket和源代码树。有没有人有任何想法,以及如何防止这种情况发生?
答案 0 :(得分:0)
检查..
git add
git commit
如果这些都没问题,你应该能够在你的仓库上看到这个文件,比如GitHub吗?
如果您可以在Github上查看是否需要检查分支和流量,以确保从正确的位置提交和推/拉/合并。
不确定这是否是您工作流程的问题?不包含这些文件的唯一原因是您没有在git add
中添加文件,或者它们在您的.gitignore
文件中,因此被排除在外?
答案 1 :(得分:0)
难道你们俩都在不同的分支机构工作吗?
即:当您(和/或您的同事)从遥控器拉出时,会下载更改集,但它们会继续驻留在单独的分支中(例如foo
或origin/foo
)并且不会合并进入你的工作分支(例如bar
)。
快速修复是手动合并两个分支:
git merge origin/foo
如果你想继续在不同的分支机构工作,你应该使用"部署"分支(例如master
),您在其中合并了您想要在实际目标网页上看到的所有更改(并且不必担心在您的工作分支中使用非工作代码时意外破坏它)。
如果你有足够的信心,你不会破坏事情,你也可能只是决定让你和你的同事直接推进一个分支(master
)。
在任何情况下,您都应确保将本地分支设置为track
相应的远程分支:
git push --set-upstream origin foo