2011-08-30 51 views
0

我在一個小團隊的開發人員和設計師,開發Web應用程序,現在我們決定開始使用版本控制。我們有主要的開發服務器,所有的項目都存儲在這裏,我們通過ftp工作(但我們有ssh訪問)。如何在遠程開發服務器上使用版本控制?

問題是,有人在其上推送提交後更新服務器上的文件的最佳方式是什麼,因此所有更改都可以立即在瀏覽器中看到? 據我所知,一個git倉庫應該是'裸'的,可以接收push,並且由於它是'裸'的 - 它沒有工作文件。這是否意味着git對此沒有用處或者有辦法?

在Mercurial推送提交必須應用本地文件來更改。應該通過某種鉤子來完成嗎?

而且我實際上並不知道svn在這種情況下的表現如何,從來沒有使用過。

該解決方案應易於使用並與GUI客戶端兼容。

回答

2

查找「鉤子」,即某些特定事件發生時由版本控制軟件調用的腳本,例如,當變更集已被拉入存儲庫時。該功能在SVN,GIT,Mercurial,Bazaar中可用...

我目前在中央儲存庫上有一個鉤子,上面有一個WIP網站:當團隊中有人推送他的更改時,網站的測試版本由鉤子腳本自動更新。然後,當我們對某個版本感到滿意時,我們使用另一個腳本將此版本移至測試版網站,以便某些用戶能夠進行檢查。

+0

謝謝,我會嘗試用鉤子來使用Mercurial。 – grisevg

0

沒有必要讓工作樹能夠通過網絡訪問您的回購。請參閱GitWeb上的文檔。

+1

要麼我不明白你的答案,要麼你不明白我的問題。我需要網站作爲存儲庫,並且能夠在推送更新後在瀏覽器中查看該網站的更改。爲了能夠進入git倉庫,它必須是'裸'的,所以沒有工作文件會在那裏。有解決方法嗎? – grisevg

+1

誤解是我的。我以爲你在討論通過HTTP瀏覽repo中的源代碼。 Klaim關於鉤子的建議似乎是尋找你想要的東西的好方法。 –

相關問題