Git 的目標或是特色有幾項:快、簡單(呃....)、非線性、分散式、可處理超大專案。
Git 對分支(Branch)的操作極快速,對複雜的合作開發模式也可以勝任。不過因為複雜開發模式也真的太複雜了,建議看看Git Flow 開發流程或是英文版的 A successful Git branching model
基本操作很簡單:
git init / git init --bare
git clone / git clone --bare
git add / git rm
git commit / git commit --amend
git status / git log / git diff
git checkout / git checkout -- file
// git clone 才像 svn checkout, 而 git checkout 是用來切換分支的命令
git pull origin == git fetch origin + git merge origin/master
關於 rebase 與 merge, 其實我並沒有搞懂,但是這不妨礙我把它抄下來
指令 git pull --rebase
rebase 的意思是
1. 把本地 repo. 從上次 pull 之後的變更暫存起來
2. 回覆到上次 pull 時的情況
3. 套用遠端的變更
4. 最後再套用剛暫存下來的本地變更。
所以如果將已經 push 出去的變動再來一次 rebase 的話,到底會怎樣?
0 意見:
張貼留言