http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137402760310626208b4f695940a49e5348b689d095fc000
GIT工作原理
Gitflow
工作流仍然用中央倉庫作爲所有開發者的交互中心。和其它的工作流一樣,開發者在本地工作並push
分支到要中央倉庫中。
歷史分支
相對使用僅有的一個master
分支,Gitflow
工作流使用2個分支來記錄項目的歷史。master
分支存儲了正式發佈的歷史,而develop
分支作爲功能的集成分支。
這樣也方便master
分支上的所有提交分配一個版本號。
剩下要說明的問題圍繞着這2個分支的區別展開。
功能分支
每個新功能位於一個自己的分支,這樣可以push
到中央倉庫以備份和協作。
但功能分支不是從master
分支上拉出新分支,而是使用develop
分支作爲父分支。當新功能完成時,合併回develop
分支。
新功能提交應該從不直接與master
分支交互。
注意,從各種含義和目的上來看,功能分支加上develop
分支就是功能分支工作流的用法。但Gitflow
工作流沒有在這裏止步。
發佈分支
維護分支
維護分支或說是熱修復(hotfix
)分支用於生成快速給產品發佈版本(production
releases
)打補丁,這是唯一可以直接從master
分支fork
出來的分支。
修復完成,修改應該馬上合併回master
分支和develop
分支(當前的發佈分支),master
分支應該用新的版本號打好Tag
。
爲Bug
修復使用專門分支,讓團隊可以處理掉問題而不用打斷其它工作或是等待下一個發佈循環。 你可以把維護分支想成是一個直接在master
分支上處理的臨時發佈
git安裝教程
http://jingyan.baidu.com/article/75ab0bcbc8492dd6864db2fa.html
Git Gui for Windows的建庫、克隆(clone)、上傳(push)、下載(pull)、合併
http://blog.csdn.net/fym0512/article/details/7713006
https://github.com/oldratlee/translations/blob/master/git-workflows-and-tutorials/workflow-gitflow.md#%E5%8A%9F%E8%83%BD%E5%88%86%E6%94%AF
====================================================================================
Git 常用命令
git init here -- 創建本地倉庫(repository),將會在文件夾下創建一個 .git 文件夾,.git 文件夾裏存儲了所有的版本信息、標記等內容
git remote add origin [email protected]:winter1991/helloworld.git
-- 把本地倉庫和遠程倉庫關聯起來。如果不執行這個命令的話,每次 push 的時候都需要指定遠程服務器的地址
git add -- 從本地倉庫增刪,結果將會保存到本機的緩存裏面
git rm
git commit -m "註釋" -- 提交,把本機緩存中的內容提交到本機的 HEAD 裏面
git push origin master -- 把本地的 commit(提交) push 到遠程服務器上, origin 也就是之前 git remote add origin 那個命令裏面的 origin,origin 替代了服務器倉庫地址:git push [email protected]:winter1991/helloworld.git master
git pull origin master -- 從遠程服務器 pull 新的改動
git status -- 查看狀態
git add -A -- 提交全部修改
1. git 配置:
git config --global user.name "xxx" -- 配置用戶名,上傳本地 repository 到服務器上的時候,在 Github 上會顯示這裏配置的上傳者信息
git config --global user.email "xxx" -- 配置郵箱
git config --list 查看配置列表
配置 sshkey : 上傳代碼時使用這個 sshkey 來確認是否有上傳權限
1. 創建本地 ssh : ssh-keygen -t rsa -C "Github 的註冊郵箱"
2. 在 Github 中添加這個 sshkey :
複製 C:\Documents and Settings\Administrator\.ssh\id_rsa.pub 文件中的內容;
登錄 Github --> Account Setting --> SSH-KEY --> Add SSH-KEY --> 粘貼id_rsa.pub中的內容;
3. 驗證: ssh -T [email protected]
出現 Hi xxx! You've successfully authenticated, but GitHub does not provide shell access. 說明配置成功,可以連接上 Github
2. 建立倉庫 repository :
git init here -- 創建本地倉庫
git remote add origin [email protected]:用戶名/倉庫名.git
-- 把本地倉庫和遠程倉庫關聯起來, 如果不執行這個命令的話,每次 push 的時候都需要指定遠程服務器的地址
3. 從遠程倉庫中下載新的改動:
git pull origin master
4. 提交本地修改到遠程倉庫中:
git add
git add -A -- 將改動添加到本地倉庫中
git rm xxx -- 從本地倉庫中刪除指定文件
git rm -r xxx -- 從本地倉庫中刪除指定文件夾
git commit -m "註釋" -- 把本機緩存中的內容提交到本機的 HEAD 裏面
git push origin master -- 把本地的 commit push 到遠程倉庫中
5. 使用 .gitignore 文件忽略指定的內容:
1. 在本地倉庫根目錄創建 .gitignore 文件。Win7 下不能直接創建,可以創建 ".gitignore." 文件,後面的標點自動被忽略;
2. 過濾文件和文件夾: [Tt]emp/ 過濾 Temp\temp 文件夾; *.suo 過濾 .suo 文件;
3. 不過濾文件和文件夾: !*.c