我花了很长时间试图解决这个问题,但我无法让它以我需要的方式工作(也许我想要的甚至不可能)。
这是我的情况和我想要实现的目标: 我在 Windows 7 中工作。我正在开发一个网站,我正在使用 NetBeans 7.2 来管理我的项目。该网站应在使用FTP / FTPS 访问的远程虚拟主机上发布。
即使我是唯一一个在这个网站上工作的人,我想使用 GIT 进行版本控制(之前从未使用过任何版本),因为我想学习如何使用它而且我还想从两台不同的计算机(都使用NetBeans)开发网站,所以我觉得它可能对我有帮助。
我相信GIT在NetBeans中得到了很好的支持,但GIT和FTP可能还存在一些问题。因此,我安装了 NetDrive 并在Windows下为我的FTP服务器创建了虚拟驱动器(虚拟驱动器运行良好,我可以简单地编辑那里的文件,并在网络上显示)。
我认为我想要实现的目标正在变得清晰。我读了这篇不错的文章:http://hoth.entp.com/output/git_for_designers.html和 我想完成该文章中图2中的内容 。
我还阅读了这篇NetBeans GIT教程:http://netbeans.org/kb/docs/ide/git.html
所以我在我的新虚拟驱动器(代表FTP服务器)上创建了一个NetBeans项目,初始化了一个GIT存储库并执行了第一次提交(所有这些都使用NetBeans菜单)。
然后,我将GIT存储库克隆到本地目录,并在该目录中创建了一个NetBeans项目。克隆进展顺利,我在本地目录中有文件,所以我可以编辑它们。
编辑并提交文件后,我尝试通过菜单GIT-Remote-> Push 将存储库推回到虚拟驱动器(FTP服务器)。我可以在下拉菜单中看到原始存储库(origin:file:/// my_virtual_drive_and_path_to_the_directory)。所以我点击了Next,选择了分支...根据输出,一切都很顺利。
但我的虚拟驱动器(FTP服务器)上的实际文件没有改变! GIT存储库版本发生了变化,但服务器上的文件仍然保留了我编辑它们之前的状态。 / p>
如果一切正常,我还会在我的另一台计算机上安装NetDrive,为我的FTP服务器创建一个虚拟驱动器,克隆GIT存储库,我可以在其他计算机的帮助下处理该项目GIT版本控制。然后我只会“推”和“拉”,我会很高兴。
但现在我的脑袋即将爆炸。如果我正在采取正确的方向以及我犯错误的地方,请告诉我我的想法是否可能。
谢谢。
答案 0 :(得分:1)
基本上,看起来你的推送不会导致结账。看看http://toroid.org/ams/git-website-howto,这可能会有所帮助。
答案 1 :(得分:1)
你对如何推动工作/它的作用存在误解。推送更新回购内容/历史记录,而不是结帐工作副本。由于这会导致令人困惑的情况(您可能已经注意到了;),您通常不会推送到具有工作副本的仓库。
但在你的情况下,这显然是你系统的一部分,但是你需要设置git这样才能工作。请参阅此处了解如何:Deploy a project using Git push