架構圖
本地工作目錄(work directory)
開發者進行開發的地方
版本倉庫(respository)
儲存各個版本和維護更新
動態維護分支(功能分支再向主分支合併)
checkout 第一次導下來,受到版本控制,**.svn
import
export 不受版本控制
delete
revert
update 遇到衝突時手動更新
commit
branch+merge分支管理
特點:
1. git採取的是快照而非svn對比不同(底層操作比上層操作更加快速)
2. git幾乎基本所有操作都是本地的
3. git三種狀態:未修改,已修改,已同步到遠端版本倉庫
三個區域:
遠端倉庫
本地倉庫
臨時工作區域(已經add未commit)
工作區域
本地修改
全域性身份設定:
git config --global user.name "xx"
git config --global user.email ***
本地倉庫初始化
git init
git add *** 加入記錄跟蹤
git commit *** -m *** 本地倉庫提交修改
從遠端 checkout 到本地倉庫
git clone ***x
顯示遠端倉庫的位址
git remote -v
檢視當前git狀態
git status
忽略檔案或者檔名
echo "***" >> .gitignore
此命令比較的是工作目錄(working tree)和暫存區域快照(index)之間的差異
git diff
檢視已經暫存起來的檔案(staged)和上次提交時的快照之間(head)的差異
git diff --staged
git diff --cached
git log
檢視提交的版本資訊
git reset –mixed xx
此為預設方式,不帶任何引數的git reset,即時這種方式,它回退到某個版本,只保留原始碼,回退commit和index資訊
git reset –soft xx
回退到某個版本,只回退了commit的資訊,不會恢復到index file一級。如果還要提交,直接commit即可
git reset –hard xx
徹底回退到某個版本,本地的原始碼也會變為上乙個版本的內容
刪除檔案
git rm ***
移動檔案
git mv ***
遠端修改
把遠端倉庫拿下來到本地倉庫並且合併
git pull ***
把遠端倉庫拿下來到本地倉庫但是並不合併,而是新建立分支
git fetch ***
推送,許可權足夠
git push orgin master
打補丁,許可權不足
git format-patch origin/master
分支管理
檢視分支
gitbranch
建立分支
gitbranch
[branchname]
切換分支(分支互不影響)
gitcheckout
[branchname]
分支修改比較
gitdiff
[branchname]
[branchname]
合併分支
gitcheckout
[branchname]
gitpull . [branchname]
或者git
merge
***head
[branchname]
打標籤git
tag-a
***-m
***會退到標籤
gitcheckout
[tagname]
svn是cs結構,git是分布式結構
svn有工作區域,git有工作區域和本地倉庫
svn不方便離線操作,git離線操作方便
svn速度慢,git速度快
svn的branch新建目錄,git的branch不新建目錄
svn 和 git的簡單使用
全部採用終端操作,未採用客戶端輔助 svn 找到你要儲存和操作的路徑 1.check out 簡寫co svn co path 例如 svn co svn 2.add 新增檔案 svn add file 例如 svn add download.h 注意,新增完成檔案後,要提交 3.提交 svn co...
Linux下Git和Svn的使用
svn 1 安裝svn sudo apt install subversion 3 上傳新檔案 svn add 檔名 svn commit m 備註 4 修改 直接輸入 svn commit m 備註 5 刪除檔案 svn delete 檔名 svn commit m 備註 6 如果誤刪了檔案 sv...
xcode的svn和git使用方法
1.建立版本庫 參考 方法 直接在windows伺服器安裝visualsvn server即可管理。2.checkout 參考 方法 開啟xcode 4.2,開啟windows organizer repository,在點選螢幕左下角的 按鈕,選擇 add repository 3.svn命令使用...