Git的 是一個很強大的分佈式版本控制系統。它不但適用於管理大型開源軟件的源代碼,管理私人的文檔和源代碼也有很多優勢。
Git的常用操作命令:
1)遠程倉庫相關命令
檢出倉庫:$ git clone git://github.com/jquery/jquery.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]
*如果想把本地的某個分支測試提交到遠程倉庫,並作爲遠程倉庫的主分支,或者作爲另外一個名叫測試的分支,如下:
$ git push origin test:master //提交本地test分支作爲遠程的master分支
$ git push origin test:test //提交本地test分支作爲遠程的測試分支
2)分支(分支)操作相關命令
查看本地分支:$ 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]的分支與當前分支合併
創建遠程分支(本地分支推到遠程):$ git push origin [name]
刪除遠程分支:$ git push origin:heads / [name]或$ gitpush origin:[name]
*創建空的分支:(執行命令之前記得先提交你當前分支的修改,否則會被強制刪乾淨沒得後悔)
$ git symbolic-ref HEAD refs / heads / [name]
$ rm .git / index
$ git clean -fdx
3)版本(標籤)操作相關命令
查看版本:$ git tag
創建版本:$ git tag [name]
刪除版本:$ git tag -d [name]
查看遠程版本:$ git tag -r
創建遠程版本(本地版本push到遠程):$ git push origin [name]
刪除遠程版本:$ git push origin:refs / tags / [name]
合併遠程倉庫的標籤到本地:$ git pull origin --tags
上傳本地標籤到遠程倉庫:$ git push origin --tags
創建帶註釋的標籤:$ 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)手動刪除子模塊殘留的目錄
5)忽略一些文件,文件夾不提交
在倉庫根目錄下創建名稱爲“的.gitignore”的文件,寫入不需要的文件夾名或文件,每個元素佔一行即可,如
目標
箱子
*。D b
=====================
Git常用命令
git branch查看本地所有分支
git status查看當前狀態
git commit提交
git branch -a查看所有的分支
git branch -r查看本地所有分支
git commit -am“init”提交併且加註釋
git remote add origin [email protected] :ndshow
git push origin master將文件給推到服務器上
git remote show origin顯示遠程庫origin裏的資源
git push origin master:develop
git push origin master:hb-dev將本地庫與服務器上的庫進行關聯
git checkout --track origin / dev切換到遠程dev分支
git branch -D master develop刪除本地庫開發
git checkout -b dev建立一個新的本地分支dev
git merge origin / dev將分支dev與當前分支進行合併
git checkout dev切換到本地dev分支
git遠程顯示查看遠程庫
git add。
git rm文件名(包括路徑)從git中刪除指定文件
git clone git://github.com/schacon/grit.git從服務器上將代碼給拉下來
git config --list看所有用戶
git ls-files看已經被提交的
git rm [文件名]刪除一個文件
git commit -a提交當前repos的所有的改變
git add [文件名]添加一個文件到git index
git commit -v當你用-v參數的時候可以看commit的差異
git commit -m“這是描述提交“添加提交信息
git commit -a -a是代表添加,把所有的更改加到git index裏然後再提交
git commit -a -v一般提交命令
git log看你提交的日誌
git diff查看尚未暫存的更新
git rm aa移除文件(從暫存區和工作區中刪除)
git rm --cached aa移除文件(只從暫存區中刪除)
git commit -m“remove”移除文件(從Git中刪除)
git rm -f aa強行移除修改後文件(從暫存區和工作區中刪除)
git diff --cached或$ git diff --staged查看尚未提交的更新
git stash push將文件給推到一個臨時空間中
git stash pop將文件從臨時空間pop下來
---------------------------------------- -----------------
git remote add origin [email protected]:username/Hello-World.git
git push origin master將本地項目給提交到服務器中
---- -------------------------------------------------- -----
git pull本地與服務器端同步
-------------------------------------- ---------------------------
git push(遠程倉庫名)(分支名)將本地分支推送到服務器上去.git
push origin serverfix :awesomebranch
------------------------------------------------ ------------------
git fetch相當於是從遠程獲取最新版本到本地,不會自動merge
git commit -a -m“log_message”(-a是提交所有改動,-m是加入日誌信息)本地修改同步至服務器端:
git branch branch_0.1 master從主分支master創建branch_0.1分支
git branch -m branch_0.1 branch_1.0將branch_0.1重命名爲branch_1.0
git checkout branch_1.0 / master切換到branch_1.0 / master分支
du -hs
------------ -----------------------------------------------
mkdir WebApp
cd WebApp
git init
touch README
git add README
git commit
-m'first commit'git remote add origin [email protected]:daixu/WebApp.git
git push -u origin master
Git常用命令圖表
圖片轉自:http://www.cnblogs.com/1-2-3/archive/2010/07/18/git-commands.html
本文轉自:http://hi.baidu.com/sunboy_2050/item/ffab7396672895d11a49dfcc