1.修改git config,輸入自己的名字和郵箱:git config --global user.name "xxx" git config --global user.email "[email protected]" mac: git config --global core.autocrlf inputwindows: git config --global core.autocrlf true
2.一個功能完整完成并測試以后,首先使用git status查看本地git倉庫狀態,然后將新添加的文件放入git管理:git add -A/filename,并且從git倉庫中刪除本地已經刪除的文件:git rm filename。3.然后將自己本地的代碼都提交:git commit --verbose -a -m '注釋',注意:提交代碼只是將代碼提交到本地git倉庫,步驟8才是將修改提交到遠程git倉庫。4.執行:git fetch origin,下載遠程git倉庫的所有更新。5.執行:git merge origin/master,將遠程git倉庫的更新合并到本地。6.然后手工處理本地的沖突文件,并檢查merge的文件是否有問題。7.重新按照步驟3提交沖突的文件到本地倉庫。8.執行:git push origin master --follow-tags,將merge后的代碼和自己修改的代碼推送到遠程。
git Branch 相關:
結構示例:
master | | |branch1 ---- | ---- developer1 developer2master -- 主分支, 在此分支上發布最新版本developer1, developer2 -- 開發人員分支branch1 -- 可以作為版本備份, 上線版本的bugfix
NOTE: master作為主分支, 需要最少次數的merge代碼, 且保證master分支是可以運行的, 而且不該出現測試的文件或代碼
流程:0. 查看當前branch: git status1. 查看branch: git branch -a (查看本地) git branch -r (查看遠程)2. 創建branch: git branch <branch_name> 3. 切換分支: git checkout <branch_name> 4. 把 branch push 到遠程: git push origin <branch_name> 5. 把 branch 和遠程關聯起來 git branch --set-upstream <branch_name> origin/<branch_name> 6. 開發并提交6.1 假設每個人在自己的分支(以 developer1 為例)6.2 本地修改代碼, add, commit. 參考上面第3步6.3 git pull (merge, 一般在自己的branch不會有其他人提交); 如果你需要合并master的更新(比如其他人提交東西到master), 那么接著執行 git merge origin/master6.4 看情況作push 命令: git push (比如每天下班前, 或者一個大點的功能開發測試完成); 和上面第8步不同, 不要加"origin master"; 此時代碼push到自己 branch 的遠程6.5 如果功能完成, 需要merge到master:* 1) git add => git commit => git pull => git merge master => git add => git commit => git push; 此時自己的本地分支和自己的遠程分支都merge到最新;* 2) 切換到master分支 (git checkout master) => git merge developer1 => git add => git commit => git push; 此時本地 master 分支 和 遠程master分支都是最新.6.6 如果需要merge其他人的分支 git pull => git merge developer2 => git add => git commit7. 每次產品上線(此時, 新功能都開發完成, 并且已經merge到master, 從master打包)之后, 所有分支都從master merge最新的代碼8. 如果線上版本有bug, 或者需要加小版本, 則可以在 branch1 上面開發. 發布小版本后, 將最新代碼 merge 到 master.