git拉取遠程分支並建立本地分支

本地分支推送至遠程

git checkout local_branch
git push origin local_branch:remote_branch

  

1、查看遠程分支

使用以下Git命令查看全部遠程分支:

git branch -r

  

 

列出本地分支:git

 

git branch

  

 

 

刪除本地分支:github

 

git branch -D BranchName

  

 

 

其中-D也能夠是--delete,如:服務器

 

git branch --delete BranchName

  

 

 刪除本地的遠程分支:fetch

git branch -r -D origin/BranchName

  

 

遠程刪除git服務器上的分支:url

git push origin -d BranchName

其中-d也能夠是--delete,如:

git push origin --delete BranchName

  

 

2、拉取遠程分支並建立本地分支

方法一

使用以下命令:

git fetch
git branch -r
git checkout -b fenzhi001 origin/fenzhi001

  

git checkout -b 本地分支名x origin/遠程分支名x

使用該方式會在本地新建分支x,並自動切換到該本地分支x。

方式二

使用以下命令:

git fetch origin fenzhi001:fenzhi001
git checkout fenzhi001

  

使用該方式會在本地新建分支x,可是不會自動切換到該本地分支x,須要手動checkout

 

查看標籤
打印全部標籤
git tag

打印符合檢索條件的標籤
git tag -l <版本號>
如 git tag -l 1.*.* 爲搜索一級版本爲1的版本

查看對應標籤狀態
git checkout <版本號>
建立本地標籤
建立輕量標籤
輕量標籤指向一個發行版的分支,其只是一個像某commit的引用,不存儲名稱時間戳及標籤說明等信息。定義方法以下

git tag <版本號>-light
建立帶附註標籤
相對於輕量標籤,附註標籤是一個獨立的標籤對象,包含了名稱時間戳以及標籤備註等信息,同時指向對應的commit。定義方法以下

git tag -a <版本號> -m "<備註信息>"
同時咱們也能夠像特定的commit添加標籤,使用該commit對應的SHA值便可

git tag -a <版本號> <SHA值> -m "<備註信息>"
好比 git tag -a 1.0.0 0c3b62d -m "Release Edition v1.0.0" 就是爲SHA爲0c3b62d的此次提交打了1.0發行版的tag

刪除本地標籤
git tag -d <版本號>
將本地標籤提交到遠程倉庫
前面所提到的建立標籤,只是將標籤添加到了本地的版本管理,咱們須要在建立以後將本地標籤同步到遠程倉庫,如Github。

推送全部標籤
git push origin --tags
推送指定版本的標籤
git push origin <版本號>
刪除遠程倉庫的標籤
同建立本地標籤同樣,刪除了本地標籤以後也要同時刪除遠程倉庫的標籤。

新版本Git (> v1.7.0)
git push origin --delete <版本號>
新舊版本通用方法
舊版本Git並無提供直接刪除的方法,而咱們能夠經過將一個空標籤替換現有標籤來實現刪除標籤,即以下命令

git push origin :refs/tags/<版本號>
補充:使用Github添加標籤

  

 

 

 

在項目中使用Submodule

使用git命令能夠直接添加Submodule:

git submodule add 地址 目錄名

git submodule add git@github.com:jjz/pod-library.git common

  

使用 git status命令能夠看到

git status

  

    On branch master

    Changes to be committed:

    

        new file:   .gitmodules

        new file:   common

 

能夠看到多了兩個須要提交的文件:.gitmodules和 common 

.gitmodules 內容包含Submodule的主要信息,指定reposirory,指定路徑:

   [submodule "pod-library"]

        path = common

        url = git@github.com:jjz/pod-library.git

 

發佈子模塊改動

git push --recurse-submodules=check 

  

或者

git push --recurse-submodules=on-demand

  

如何使用Git刪除新增的文件

解決方案
百度和實踐了一波,總結有兩個解決方案spa

1. 使用git clean刪除
git clean的做用就是清除未track的文件或文件夾, 主要有如下幾個用法對象

git clean -n
1
使用此命令將會顯示將要刪除的文件(注:但若是是新增的文件夾,則不會顯示,包括這個文件夾下的文件也不會顯示)blog

git clean -f <path>
1
使用此命令將會刪除新增的文件,但不會刪除新增的文件夾(包括這個文件下的文件)rem

git clean -df
1
使用些命令則會刪除新增的文件和新增的文件夾同步

git clean -xdf
1
使用此命令則會刪除新增的文件和新增的文件夾,包括被.ignore文件過濾文件或文件夾,因此這個命令最好是不要用。

2. 先將文件提交,再使用git reset --hard命令來刪除這個方案不提倡,使用麻煩,還容易誤刪代碼。

相關文章
相關標籤/搜索