2012-11-14 27 views
-2

確定我的客戶要求我對他的網站進行更改。我可以從他們的webdev團隊獲得他們的GIT,我只知道我在做什麼。我做了一些修改,設法推動它們,然後從他那裏得到一封郵件,說我在錯誤的分支中做了,並在「wp」分支中完成。但我不知道如何做到這一點,有什麼想法?GIT分支的白癡指南

從一開始,我使用「git clone」來獲取存儲庫。然後我編輯的文件,然後設法谷歌幾個命令把它找回來..他們是...

git add file.php 
git commit -m 'comments' 
git push 
+4

剛剛閱讀[Git參考](http://git-scm.com/docs/)的相關部分是否有任何問題? – lanzz

+2

在[Pro Git](http://git-scm.com/book/en/Git-Branching)中還有一個關於分支的不錯章節。如果說你更熟悉哪個源代碼控制軟件,你更有可能爲X用戶獲得* git *鏈接等。對於所有這些好的愛,學會使用谷歌,搜索「git分支」,**的第一個結果**將您鏈接到我鏈接到的Pro Git的同一章節。 – R0MANARMY

+0

嗯,我通常是第一個說「使用谷歌」的人,但我一直在尋找大約2個小時,而且我正在努力工作,所以有一些我失蹤,因此我的帖子。所以我張貼在這裏,但不用擔心,我會繼續搜索。 – Doyley

回答

1

第一檢出你需要工作的分支:然後

get checkout wp 

你承諾和推...

+0

這隻適用於原始海報有遠程'wp'分支的本地分支。如果他只是克隆了,他可能只有一個本地'master'分支,所以他需要用'git checkout -b wp remote/wp'創建一個本地'wp'分支。 – 2013-07-08 00:38:49

4

雖然說「只是谷歌它」有點情緒上滿意,最後,並不特別有用。

正如我在評論中提及的branching章是相當不錯的,並做了解釋的Git分支的一個更好的工作比我在這裏。 Robodo也給出了正確的答案,那就是你將如何切換到wp分支來進行工作。

很可能您收到的電子郵件中顯示「您做錯了」,因爲他們使用工作流,其中master分支代表穩定的可部署代碼(這種工作流程的示例here)。因此,直接向主人提交的東西是不屑一顧的。您應該瞭解他們使用的工作流程,並嘗試遵循它。

當您運行clone命令時,獲取包含所有分支的遠程存儲庫的完整副本。您可以通過運行

git branch --all 

我查看所有可用的分支機構,各地分支機構是白色的,遠程分支機構是紅色的,和當前已簽出分支爲綠色。

遠程分支機構?

遠程分支是對遠程存儲庫中分支狀態的引用。他們是你不能移動的地方分支;只要您進行任何網絡通信,它們就會自動移動。遠程分支作爲書籤來提醒您遠程存儲庫上的分支是最後一次連接到它們的位置。

爲了在遠程分支上工作,您需要create a local分支來跟蹤遠程分支並對其進行提交。這聽起來可能有點奇怪,但它實際上只是一個命令

git checkout -t origin/wp 

一旦當地分行已經創建,您可以使用

git checkout <branch name> 

什麼您的工作流程將可能最終會被它們之間進行切換是一樣的東西這

git clone <url>   
git checkout -t origin/wp    // create tracking branch 
git checkout -b <branch name>   // branch for feature you plan to work on 
    ... work work work ... 
git add <files as needed>    // you can commit locally as much as you'd like 
git commit        // no one will see it until you push 
    ... when work is done ... 
git checkout wp       // switch to branch you will merge into 
git pull        // make sure it's up to date with remote code 
git merge <branch you were working on> // merge your changes into wp branch and resolve 
             // merge conflicts, if there are any 
git push        // publish your changes to remote repository 

有關於merge vs rebase工作流程的一些熱烈的辯論。如果您的客戶有偏好,請與它一起使用。如果他們不這樣做,請閱讀雙方的論點,看看你更喜歡哪一個,然後使用它。

+0

這很好,謝謝! – Doyley

+0

不要忘記標記爲已回答的問題,否則人們可能會停止嘗試提供幫助。 – R0MANARMY