GIT, FTP, NetBeans and NetDrive

3
我花了很长时间来尝试解决这个问题,但我无法以所需的方式工作(也许我想要的甚至是不可能的)。以下是我的情况和我想要实现的内容: 我使用Windows 7。我正在开发一个网站,我使用NetBeans 7.2来管理我的项目。该网站应发布在具有FTP / FTPS访问权限的远程Web托管上。即使我是唯一在此网站上工作的人,我想要使用GIT进行版本控制(我以前从未使用过任何版本控制),因为我想学习如何使用它,并且我还将想要从两台不同计算机(都具有NetBeans)开发网站,因此我认为它可能确实会对我有所帮助。我相信NetBeans非常支持GIT,但是GIT和FTP可能仍然存在一些问题。因此,我安装了NetDrive,并在Windows下创建了一个FTP服务器的虚拟驱动器(虚拟驱动器有效,例如我可以简单地在那里编辑文件并显示在Web上)。我认为我想要实现的事情变得清晰起来了。我阅读了这篇不错的文章:http://hoth.entp.com/output/git_for_designers.html,并且我想要做的正是其中第2个图中的内容。我还阅读了这篇NetBeans GIT教程:http://netbeans.org/kb/docs/ide/git.html。因此,我在我的新虚拟驱动器上创建了一个NetBeans项目(表示FTP服务器),初始化了GIT存储库并执行了第一次提交(所有内容都使用NetBeans菜单)。然后,我将GIT存储库克隆到本地目录中,并在该目录中创建了一个NetBeans项目。克隆进行得很顺利,我在本地目录中有了文件,因此可以对它们进行编辑。编辑并提交文件后,我尝试通过菜单GIT-Remote->Push将存储库推回虚拟驱动器(FTP服务器)。我可以在下拉菜单中看到原始存储库(origin:file:/// my_virtual_drive_and_path_to_the_directory)。所以我单击了下一步,选择了分支...根据输出,一切都很好。但是,我的虚拟驱动器(FTP服务器)上的实际文件就是没有改变!GIT存储库版本更改,但服务器上的文件仍与编辑它们之前保持不变。如果这一切都有效,我还会在另一台计算机上安装NetDrive,在那里为我的FTP服务器创建虚拟驱动器,克隆GIT存储库,然后我将能够使用GIT版本控制从另一台计算机上的项目中工作。然后,我只需要"push"和"pull",我就会很高兴。
但现在我的头快爆炸了。请告诉我我想要的是否可行,我是否朝着正确的方向前进,以及我犯了哪些错误。
谢谢。
2个回答

1

谢谢,我试过了但是推送没有成功:== [IDE] == 2012年12月23日7:22:08 提交...完成。 == [IDE] == 2012年12月23日7:22:26 推送 git push F:\public_html\abc +refs/heads/master:refs/heads/master 远程仓库更新 分支:主分支 旧ID:30ecfdc881ac64cdb9c59623eaa50f864f70f86b 新ID:7f0ec08a6daf7384ad08c63c3639999c46035756 结果:被拒绝,其他原因本地仓库更新 分支:origin/master 旧ID:30ecfdc881ac64cdb9c59623eaa50f864f70f86b 新ID:7f0ec08a6daf7384ad08c63c3639999c46035756 结果:未尝试 - user1763581

1

您对推送机制及其作用存在误解。推送会更新存储库的内容/历史记录,而非检出的工作副本。由于这会导致混乱的情况(您可能已经注意到了;),通常不会向具有工作副本的��储库推送。

但在您的情况下,这显然是您系统的一部分,但您需要设置Git使其正常工作。请参见此处以获取如何设置的说明:使用Git推送部署项目


谢谢。是的,这很令人困惑。你的解决方案可能与DWright类似。对我来说不起作用,也许是因为服务器上没有运行GIT(而且不会有)。你能否给我一些提示(最好是教程),告诉我如何最好地将GIT与其他部署到FTP服务器的工具结合使用(这样我就不必手动上传所有更改的文件了)。 - user1763581
一般而言,“对我不起作用”并不是理解您的问题的非常有帮助的信息。如果NetDrive成功地将您的ftp模拟为驱动器,则您没有在服务器上安装git不应该成为问题。如果您确定这是问题,您也可以在git中设置一个ftp远程,并使用此工具推送到其中:https://github.com/resmo/git-ftp。 - Chronial

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接