2012-12-23 61 views
3

我花了很長時間試圖弄清楚這一點,但我不能讓它按我需要的方式工作(也許我想要的甚至不可能)。GIT,FTP,NetBeans和NetDrive

這是我的情況和我想實現的: 我在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

所以我創建了一個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版本控制。那麼我只會「推」和「拉」,我會很高興。

但現在我的頭即將爆炸。請告訴我,如果我正在採取正確的方向,並且我犯了錯誤,我想要什麼是可能的。

謝謝。

回答

1

基本上,它看起來像你的推動不會導致結帳。看看http://toroid.org/ams/git-website-howto,這可能會有所幫助。

+0

謝謝,我試過,但然後推沒有通過:== [IDE] == 23.12.2012 7:22:08提交...完成。 == [IDE] == 23.12.2012 7:22:26推送 git push F:\ public_html \ abc + refs/heads/master:refs/heads/master Remote Repository Updates Branch:master Old Id: 30ecfdc881ac64cdb9c59623eaa50f864f70f86b 新ID:7f0ec08a6daf7384ad08c63c3639999c46035756 結果:REJECTED_OTHER_REASON 本地庫更新 分公司:產地/主 舊的標識:30ecfdc881ac64cdb9c59623eaa50f864f70f86b 新ID:7f0ec08a6daf7384ad08c63c3639999c46035756 結果:NOT_ATTEMPTED – user1763581

1

對於如何推動作品/它做什麼,你有一種誤解。推送更新回購內容/歷史記錄,而不是結帳出工作副本。因爲這會導致混淆的情況(您可能已經注意到了);您通常不會推送到具有工作副本的倉庫。

但在你的情況下,這顯然是你係統的一部分,但你需要設置git所以這個工作。看到這裏的描述如何:Deploy a project using Git push

+0

感謝。是的,這很混亂。你的解決方案可能類似於DWright。它不適合我,也許是因爲服務器上沒有運行GIT(並且不會)。你能不能給我一個提示(教程最好),告訴我如何最好的將GIT與其他一些工具結合使用來部署到FTP服務器上(這樣我就不必手動上傳所有更改的文件)。 – user1763581

+0

一般來說:「不適合我」對於理解您的問題並不是非常有用的信息。如果NetDrive成功地將您的ftp模擬爲一個驅動器,它不應該造成您的服務器上沒有git的問題。如果你確定這是個問題,你也可以在git中設置一個ftp remote,並使用這個工具推送它:https://github.com/resmo/git-ftp – Chronial