git
git簡介
git是一款免費、開源的分布式版本控制系統,用於敏捷高效地處理任何或小或大的專案。
特點:分布式相比於集中式的最大區別在於開發者可以提交到本地,每個開發者通過轉殖(git clone),在本地機器上拷貝一
個完整的git倉庫。
下圖是經典的git開發過程。
開發中常用git模式:
git的功能特性:
從一般開發者的角度來看,git有以下功能:
1、從伺服器上轉殖完整的git倉庫(包括**和版本資訊)到單機上。
2、在自己的機器上根據不同的開發目的,建立分支,修改**。
3、在單機上自己建立的分支上提交**。
4、在單機上合併分支。
5、把伺服器上最新版的**pull/fetch下來,然後跟自己的主分支合併。
6、生成補丁(patch),把補丁傳送給主開發者。
7、看主開發者的反饋,如果主開發者發現兩個一般開發者之間有衝突(他們之間可以 合作解決的衝突),就會要
求他們先解決衝突,然後再由其中乙個人提交。如果主開發者 可以自己解決,或者沒有衝突,就通過。
8、一般開發者之間解決衝突的方法,開發者之間可以使用pull 命令解決衝突,解決完衝突之後再向主開發者提交補
丁。從主開發者的角度(假設主開發者不用開發**)看,git有以下功能:
1、檢視郵件或者通過其它方式檢視一般開發者的提交狀態。
2、打上補丁,解決衝突(可以自己解決,也可以要求開發者之間解決以後再重新提交,如果是開源專案,還要決定
哪些補丁有用,哪些不用)。
3、向公共伺服器提交結果,然後通知所有開發人員。
優點:適合分布式開發,強調個體。
公共伺服器壓力和資料量都不會太大。
速度快、靈活。
任意兩個開發者之間可以很容易的解決衝突。
離線工作。
缺點:**保密性差,一旦開發者把整個庫轉殖下來就可以完全公開所有**和版本資訊。
首次提交專案到git:
1. git global setup:(指定使用者名稱跟郵箱)
git config --global user.name "*"
git config --global user.email "*"
git init
git add -a
git commit -m "first commit"
git remote add origin
git push -u origin master
提交**流程:
1,首先要git add -a 即把本地所有有改動的檔案新增到列表
2,git commit -m 提交到本地倉庫
3,git pull 從遠端倉庫下拉**,如果有衝突解決衝突,沒有衝突的話重新git add -a git commit -m
4,提交本地**到遠端倉庫:git push origin master(主分支)
git常用命令
常用操作
新增記錄:git add file 或 git add -a
新增描述:git commit -m "描述內容"
轉殖專案:git clone "專案位址"
同步資料:git pull (拉去伺服器最新**)
提交到遠端倉庫:git push origin master
檢視本地日誌:git log
檢視master提交日誌:git log origin/master
切換分支:git checkout name
撤銷修改:git checkout -- file
刪除檔案:git rm file
檢視狀態:git status
回滾操作:git reset --hard 要回滾的記錄(git log看的)
提交資料:git push origin name
轉殖遠端分支:git checkout -b test origin/test 或者 git checkout -t origin/test(-t預設建立跟本地一樣名字的分支)
還可以git fetch origin test:test 本地分支的名字最好跟遠端分支保持一致
分支操作
檢視本地分支:git branch
檢視遠端分支:git branch -r
檢視本地和遠端分支:git branch -a
建立分支:git branch name
切換分支:git checkout name
建立+切換分支:git checkout -b name
合併某分支到當前分支:git merge name
刪除分支:git branch -d name
刪除遠端分支:git push origin :name
從遠端分支建立本地分支:git branch –b 分支名 origin/分支名
git打tag
git tag 標籤名字
git push origin --tags
.gitignore檔案為git忽略檔案
windows
下如何github ssh
公鑰1. 安裝git,從程式目錄開啟 "git bash"
2. 鍵入命令:ssh-keygen -t rsa -c "[email protected]""[email protected]"是github賬號
3. 提醒你輸入key的名稱,輸入如id_rsa
4. 在c:\documents and settings\administrator\下產生兩個檔案:id_rsa和id_rsa.pub
5. 把4中生成的金鑰檔案複製到c:\documents and settings\administrator\.ssh\ 目 錄下。
6. 用記事本開啟id_rsa.pub檔案,複製內容,在github.com的**上到ssh金鑰管理頁面,新增新公鑰,隨便取個名字,內容貼上剛才複製的內容。
Git 簡介及應用
git 是乙個開源的分布式版本控制系統,用於敏捷高效地處理任何或小或大的專案。在使用 git前我們需要先安裝 git。git 目前支援 linux unix solaris mac和 windows 平台上執行。在windows環境下安裝工git可以參考git的安裝教程 安裝好git 後,就要配置g...
Git簡介及安裝
初次接觸git,對使用過程做簡短記錄。沿用說爛了的一句話,git是什麼?git是目前世界上最先進的分布式版本控制系統 沒有之一 它區別與svn tfs vss等集中式版本控制系統,具體區別不再細說。windows系統下 git的安裝 安裝包如下圖所示,分別為 tortoisegit漢化包 安裝包及g...
Git簡介及安裝
git是乙個開源的分布式版本控制系統,可以有效 高速的處理從很小到非常大的專案版本管理。git 是 linus torvalds 為了幫助管理 linux 核心開發而開發的乙個開放原始碼的版本控制軟體 git也 是目前最流行 的分布式版本控制系統,它和其他版本控制系統的主要差別在於git只關心檔案資...