前言:
我們寫代碼寫完後總要進行管理,以前寫的很多代碼雖然寫的不是很好,但因為沒有一個比較好的代碼管理習慣,所以很多都遺失掉了,為此現在都還覺得很可惜,近來在學習使用git來進行代碼管理,git是一個很強大的分布式版本控制系統。
(1)遠程倉庫操作命令
從遠程倉庫克隆倉庫到本地:$ git clone git://github.com/******.git
查看遠程倉庫別名以及地址:$ git remote -v
添加遠程倉庫:$ git remote add [name] [url]
刪除遠程倉庫:$ git remote rm [name]
修改遠程倉庫:$ git remote set-url --push [name] [newUrl]
拉取遠程倉庫:$ git pull [remoteName] [localBranchName]
推送遠程倉庫:$ git push [remoteName] [localBranchName]
提交本地test分支作為遠程的master分支:$git push origin test:master
提交本地test分支作為遠程的test分支:$git push origin test:test
(2)分支操作命令--branch
查看遠程和本地所有分支:$ git branch -a
創建本地分支:$ git branch [name]
切換分支:$ git checkout [name]
創建新分支並且切換到新的分支:$ git check -b [name]
復制遠程的分支並且以此來創建新分支:$ git check -t /remotes/origin/branch1 //這樣就能在本地創建一個復制來自遠程branch1分支
刪除分支:$ git branch -d [name] //-d選項只能刪除已經參與了合並的分支,對於未有合並的分支是無法刪除的。如果想強制刪除一個分支,可以使用-D選項
合並分支:$git merge [name] //將名稱為[name]的分支與當前的分支合並
創建遠程分支:(本地分支push到遠程):$ git push origin [name]
刪除遠程分支:$ git push origin :heads/[name] 或 $ git push 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) 子模塊(submodule)相關操作命令
添加子模塊:$ git submodule add [url] [path]
如:$git submodule add git://github.com/soberh/ui-libs.git src/main/webapp/ui-libs
初始化子模塊:$ git submodule init ----只在首次檢出倉庫時運行一次就行
更新子模塊:$ git submodule update ----每次更新或切換分支後都需要運行一下
刪除子模塊:(分4步走哦)
1) $ git rm --cached [path]
2) 編輯“.gitmodules”文件,將子模塊的相關配置節點刪除掉
3) 編輯“ .git/config”文件,將子模塊的相關配置節點刪除掉
4) 手動刪除子模塊殘留的目錄
添加子模塊:$ git submodule add [url] [path]
如:$git submodule add git://github.com/soberh/ui-libs.git src/main/webapp/ui-libs
初始化子模塊:$ git submodule init ----只在首次檢出倉庫時運行一次就行
更新子模塊:$ git submodule update ----每次更新或切換分支後都需要運行一下
刪除子模塊:(分4步走哦)
1) $ git rm --cached [path]
2) 編輯“.gitmodules”文件,將子模塊的相關配置節點刪除掉
3) 編輯“ .git/config”文件,將子模塊的相關配置節點刪除掉
4) 手動刪除子模塊殘留的目錄
(5)忽略一些文件、文件夾不提交
在倉庫根目錄下創建名稱為“.gitignore”的文件,寫入不需要的文件夾名或文件,每個元素占一行即可,如
target
bin
*.db
(6)刪除緩存區的文件
不怎麼進行刪除操作,所以就常用這一個命令:$ git rm -r --cached .
一般的代碼管理流程:
(1)遠程已經建完倉庫後直接克隆到本地: $ git clone [倉庫地址]
(2)查看本地和遠程的branch:$ git branch -a
(3)如果遠程的branch更新了的話運行:$ git fetch -p //這樣會將遠程的分支列表重新拉取
(3)將遠程的branch復制到本地並且切換到這個分支下面:$ git checkout -t [遠程分支名字]
(4)這是看到自己已經在新建的branch下面了,然後看一下有沒有文件。
(5)若沒有的話試一下:$ git pull
(6)做完修改以後的話先add:$ git add . //這樣會將除了在.gitignore中寫入的文件都加入進要提交的文件內
(7)然後進行提交到本地倉庫:$ git commit - m "提交"
(8)可以查看狀態:$ git status 或者 $git diff
(9)如果沒什麼問題的話就進行提交到遠程庫: $ git push //如果加入-f的話是強制提交。
Fedora通過Http Proxy下載Git http://www.linuxidc.com/Linux/2009-12/23170.htm
在Ubuntu Server上安裝Git http://www.linuxidc.com/Linux/2009-06/20421.htm
服務器端Git倉庫的創建(Ubuntu) http://www.linuxidc.com/Linux/2011-02/32542.htm
Linux下Git簡單使用教程(以Android為例) http://www.linuxidc.com/Linux/2010-11/29883.htm
Git權威指南 PDF高清中文版 http://www.linuxidc.com/Linux/2013-10/91053.htm
Git 2分鐘指南 http://www.linuxidc.com/Linux/2014-11/109201.htm
Git 的詳細介紹:請點這裡
Git 的下載地址:請點這裡