Git 分支使用情況與服務器文件過大拉不下來解決方案

1.查看本地分支

$ git branch
* br-2.1.2.2
  master

2.查看遠程分支

$ git branch -r  //查看遠端分支
  origin/HEAD -> origin/master
  origin/feature/IOS_visualtrack
  origin/feature/android_visualtrack
  origin/master

3.查看所有分支

$ git branch -a
* br-2.1.2.2
  master
  remotes/origin/HEAD -> origin/master
  remotes/origin/br-2.1.2.1
  remotes/origin/br-2.1.2.2
  remotes/origin/br-2.1.3
  remotes/origin/master

注意: git branch -r 無法獲取遠程分支,ui可以看見分支但是git 命令無法查看
原因 git branch -a 這條命令並沒有每一次都從遠程更新倉庫信息,我們可以手動更新一下

4.切換遠程分支

$ git branch -a
* master
  remotes/origin/HEAD -> origin/master
  remotes/origin/Release
  remotes/origin/master

PS: 作用是checkout遠程的Release分支,在本地起名爲myRelease分支,並切換到本地的myRelase分支

5.合併分支

合併前要先切回要併入的分支
以下表示要把issue1234分支合併入master分支

$: git checkout master
$: git merge issue1234
Merge made by recursive.
 README |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

6.撤消上一次commit的內容(該操作會徹底回退到某個版本,本地的源碼也會變爲上一個版本的內容)

git reset --hard <commit-id>

7. git commit -m 註釋換行

git commit -m 註釋可以通過單引號來換行,比如:

$ git commit -m '
> 1.aaaaa
> 2.bbbb
> '
[master b25154b] 1.aaaaa 2.bbbb
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 ss.txt

通過git commit --amend 命令可以查看到剛剛的log信息爲

1.aaaaa
2.bbbb

8.git clone --depth=1時的一些問題

當項目過大時,git clone時會出現error: RPC failed; HTTP 504 curl 22 The requested URL returned error: 504 Gateway Time-out的問題,

解決方法很簡單,在git clone時加上--depth=1即可解決:depth用於指定克隆深度,爲1即表示只克隆最近一次commit.

git clone [email protected]/managerzp.git --depth=1

這種方法克隆的項目只包含最近的一次commit的一個分支,體積很小,即可解決文章開頭提到的項目過大導致Timeout的問題,但會產生另外一個問題,他只會把默認分支clone下來,其他遠程分支並不在本地,所以這種情況下,需要用如下方法拉取其他分支:

$ git clone --depth 1 https://github.com/dogescript/xxxxxxx.git
$ git remote set-branches origin 'remote_branch_name'
$ git fetch --depth 1 origin remote_branch_name
$ git checkout remote_branch_name

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章