2011-09-12 45 views
2

我有一個簡單的問題,但現在沒有找到解決方案。檢查遠程ftp的版本?

我使用Git來保存我的網站文件的本地和github上的痕跡。 我在OVH有一個帳戶,我有自己的域名,有存儲空間。

當我的代碼在本地進行測試時,我將文件從最新版本上傳到ftp。 我想簡單地確定我的網站有我的代碼的最後一個版本。

由於我在我的OVH存儲中沒有任何終端訪問權限,因此我無法執行任何git日誌或git pull。 那麼,確保擁有最新版本的最簡單方法是什麼?

我想在執行git commit時自動增加一個文件,但沒有辦法自動執行此操作。

任何幫助,將不勝感激。

謝謝!

回答

1

請記住,在git中,總是有一個HEAD「變量」指向當前分支的最新提交。

如果您查看隱藏文件.git/HEAD,您會看到它指向git文件夾中的另一個文件,即與當前分支名稱相同的文件,例如.git/refs/heads/,例如, .git/refs/heads/master如果在您的本地克隆中,您在主分支中。這些文件包含每個分支的最新版本號。

你可以考慮下載這些文件(或者只爲主分支,如果你願意的話),並檢查他們的內容相對於你認爲最新的版本哈希。

+0

謝謝!聽起來現在是個好主意。有一點bash,我應該能夠檢查散列並與本地版本進行比較,並只在需要時執行上傳:) – jlengrand

+0

不客氣:) –

0

你可以使用post-receive hook來生成一個(未被版本化)的文件,其中包含'git describe'的結果。

從那裏,你可以比較自己的本地git describe該文件。

+0

謝謝你,但我不使用標籤,和git描述不喜歡我這樣:S – jlengrand

0

我認爲在提交時增加版本文件是一個好的方法。

你可以用git hooks自動做到這一點(我相信GIT_DIR /掛鉤/預提交是什麼,你應該尋找)

+0

Git使用哈希,而不是數字,因爲它的分佈式的性質,我認爲這樣的方法與增加版本號可能會造成麻煩。 –

+0

Humm,我不確定這個文件實際上做了什麼。我會仔細看看它 – jlengrand