git 是乙個分布式版本控制工具,不必伺服器端軟體支援,使源**的發布和交流極其方便
git 的優勢主要有:
1.git是分布式的,這是git和其它非分布式的版本控制系統(svn,cvs)最核心的區別。
從中心版本庫的伺服器上chect out**後會在自己的機器上轉殖乙個自己的版本庫。
它支援離線工作;本地提交可以稍後提交到伺服器上。
如果你被困在乙個不能連線網路的地方時,你仍然能夠提交檔案,檢視歷史版本記錄,建立專案分支等。
2. 絕大部分操作在本地完成,不用和集中的**管理伺服器互動,終於可以隨時隨地大膽地check in**了。
只有最終完成的版本才需要向乙個中心的集中的**管理伺服器提交。
3.branch管理容易多了,無論是建立新的branch,還是在branch之間切換都一條命令完成,
不需要建立多餘的目錄
git 命令
1) 伺服器端初始化工作目錄:
mkdir myrepo.git
cd myrepo.git
git init --bare
2)git clone:這是一種較為簡單的初始化方式,當你已經有乙個遠端的git版本庫,只需要在本地轉殖乙份
例如:git clone git: some_project
上面的命令就是將'git:'這個url位址的遠端版本庫,完全轉殖到本地some_project目錄下
或:git clone [email protected]:test,用git這個使用者,將10.200.106.218上的test完全轉殖到當前目錄
3)git init 和 git remote:這種方式稍微複雜一些,當你本地建立了乙個工作目錄,你可以進入這個目錄,使用'git init'命令進行初始化;git以後就會對該目錄下的檔案進行版本控制,這時候如果你需要將它放到遠端伺服器上,可以在遠端伺服器上建立乙個目錄(參考1),並把可訪問的url記錄下來,此時你就可以利用'git remote add'命令來增加乙個遠端伺服器端,例如:git remote add origin git:上面的命令就會增加url位址為'git: ',名稱為origin的遠端伺服器,以後提交**的時候只需要使用 origin別名即可
二、 git 常用命令
1) 遠端倉庫相關命令
檢出倉庫: $ git clone git:
$ git clone [email protected]:test.git
新增遠端倉庫:$ git remote add [name] [url]
拉取遠端倉庫:$ git pull [remotename] [localbranchname]
推送遠端倉庫:$ git push [remotename] [localbranchname]
*如果想把本地的某個分支test提交到遠端倉庫,並作為遠端倉庫的master分支,或者作為另外乙個名叫test的分支,如下:
$git push origin test:master // 提交本地test分支作為遠端的master分支
$git push origin test:test // 提交本地test分支作為遠端的test分支
2)分支(branch)操作相關命令
檢視本地分支:$ git branch
檢視遠端分支:$ git branch -r
建立本地分支:$ git branch [name] ----注意新分支建立後不會自動切換為當前分支
切換分支:$ git checkout [name]
建立新分支並立即切換到新分支:$ git checkout -b [name]
刪除分支:$ git branch -d [name] ---- -d選項只能刪除已經參與了合併的分支,對於未有合併的分支是無法刪除的。如果想強制刪除乙個分支,可以使用-d選項
合併分支:$ git merge [name] ----將名稱為[name]的分支與當前分支合併
建立遠端分支(本地分支push到遠端):$ git push origin [name]
刪除遠端分支:$ git push origin :heads/[name] 或 $ gitpush origin :[name]
3)版本(tag)操作相關命令
檢視版本:$ git tag
建立版本:$ git tag [name]
刪除版本:$ git tag -d [name]
檢視遠端版本:$ git tag -r
建立遠端版本(本地版本push到遠端):$ git push origin [name]
刪除遠端版本:$ git push origin :refs/tags/[name]
合併遠端倉庫的tag到本地:$ git pull origin --tags
上傳本地tag到遠端倉庫:$ git push origin --tags
建立帶注釋的tag:$ git tag -a [name] -m 'yourmessage'
4)git 配置
$ git config --global alias.co checkout
$ git config --global alias.br branch
$ git config --global alias.logg "log --pretty=format:'%h - %an -%ad -%s'"
$ git config --global user.name "john doe"
$ git config --global user.email [email protected]
5)log
git log -p 檢視每個版本的差異
git log a..b 檢視a版本到b版本之間的log
git reflog 可以檢視每個改動
git reset head~1 撤銷最近的一次改動
參考:
git常用命令及技巧
暫存區 本地庫遠端庫 暫存庫 一般修改後的 先放入暫存庫,這樣可以儲存我們修改後的 同時不會提交到 庫中,起到了乙個快取的作用,當有 錯誤時,也不會影響總分支和其他人的開發,我理解中的暫存庫相當於乙個快取。本地庫 本地電腦存放 的庫,commit之後,更新的 就會同步到本地庫中,但是有乙個風險,如果...
Github及git常用命令
使用github時,需要經常使用許多git命令來對 來進行操作。這些命令都是比較好記的,多用就沒問題了。good luck!git配置 git config l 檢視git配置資訊 git config global user.name your name 配置使用者名稱 git config gl...
Git基礎及常用命令
git 開源的分布式版本控制系統。程式設計師必備。linux下git的安裝與配置 安裝 ubuntu下可以執行以下命令安裝 sudo apt install git,安裝成功後可檢視git版本 git version。git配置 git 提供了乙個叫做 git config 的工具,專門用來配置或讀...