一圖掌握git命令和工做區,版本庫,暫存區,遠程倉庫

我是新手,我說一下學習的主要注意點jquery

一.首先學會幾個區之間的關係git

就如上圖github

二.學會常規命令,以及每一個命令影響到的操做區web

git branch 查看本地全部分支  帶*的是如今所在分支  -b 建立分支  --all (或者-a)查看遠程分支和本地分支  -d 刪除分支 -D 強制刪除
git status 查看當前狀態  這個不用解釋 就是看工做區的變化
git commit 提交給本地版本庫 -m 「註釋」
git checkout  有兩個做用 1)把文件從暫存區拉出來 若是暫存區沒有  加上HEAD 從版本庫拉出來  2)切換分支  -b 建立分支 
git merge  將分支dev與當前分支進行合併  加上--no-ff能夠保存原有分支,至關於再往前走一個版本,不是直接吞併
git log 查看本地提交記錄  --graph 圖形化顯示 比較好  --graph --pretty=oneline --abbrev-commit  簡化顯示  -2 顯 ,示兩個
git diff  XXXX檢查與暫存區差別    加上HEAD  XXXX 與版本庫的差別
git rm 從暫存區刪除  要刪除版本庫的再提交就能夠了
git config list 查看全部配置  git config --global (全局配置) alias.co=checkout   第一個是配置的分頁表  .後是怎麼配置  就是對checkout加個別名co
插個別人的速查表很不錯app


3、版本庫,工做區相關命令(別人寫了,直接copy了)webapp

1) 遠程倉庫相關命令學習

檢出倉庫:$ git clone git://github.com/jquery/jquery.gitui

查看遠程倉庫:$ git remote -vurl

添加遠程倉庫:$ git remote add [name] [url]blog

刪除遠程倉庫:$ git remote rm [name]

修改遠程倉庫:$ git remote set-url --push [name] [newUrl]

拉取遠程倉庫:$ 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] 

 

*建立空的分支:(執行命令以前記得先提交你當前分支的修改,不然會被強制刪乾淨沒得後悔)

$git symbolic-ref HEAD refs/heads/[name]

$rm .git/index

$git clean -fdx

 

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) 手動刪除子模塊殘留的目錄

 

5)忽略一些文件、文件夾不提交

在倉庫根目錄下建立名稱爲「.gitignore」的文件,寫入不須要的文件夾名或文件,每一個元素佔一行便可,如

target

bin

*.db

相關文章
相關標籤/搜索