常用的git操作:Git命令之删除远程仓库分支以及添加远程仓库 其它常用命令

git branch -r -d origin/branch-name
git push origin :branch-name
1.先查看远程分支
git branch -r

zhaojr@zhaojr-OptiPlex-7040:~/project/test_8227l/test_AndroidO_8827LGO/art$ git branch -r
  m/master -> origin/master
  origin/AC8227L-AndroidO_1024x600
  origin/android-trunk-o1.ac8227L
  origin/master
  origin/mt8227LGO_Devlopment

2.使用下面两条命令来删除远程分支
删除远程分支:

1、git branch -r -d origin/AC8227L-AndroidO_1024x600

执行git branch -r -d origin/AC8227L-AndroidO_1024x600之前:
zhaojr@zhaojr-OptiPlex-7040:~/project/test_8227l/test_AndroidO_8827LGO/art$ git branch -a
  AC8227L-AndroidO_1024x600
  android-trunk-o1.ac8227L
* mt8227LGO_Devlopment
  remotes/m/master -> origin/master
  remotes/origin/AC8227L-AndroidO_1024x600
  remotes/origin/android-trunk-o1.ac8227L
  remotes/origin/master
  remotes/origin/mt8227LGO_Devlopment

执行git branch -r -d origin/AC8227L-AndroidO_1024x600之后:
zhaojr@zhaojr-OptiPlex-7040:~/project/test_8227l/test_AndroidO_8827LGO/art$ git branch -a
  AC8227L-AndroidO_1024x600
  android-trunk-o1.ac8227L
* mt8227LGO_Devlopment
  remotes/m/master -> origin/master
  remotes/origin/android-trunk-o1.ac8227L
  remotes/origin/master
  remotes/origin/mt8227LGO_Devlopment


删除远程分支:

2、git push origin :AC8227L-AndroidO_1024x600  即可git push origin <空格>:AC8227L-AndroidO_1024x600  

zhaojr@zhaojr-OptiPlex-7040:~/project/test_8227l/test_AndroidO_8827LGO/art$ git branch -r
  m/master -> origin/master
  origin/android-trunk-o1.ac8227L
  origin/master
  origin/mt8227LGO_Devlopment

zhaojr@zhaojr-OptiPlex-7040:~/project/test_8227l/test_AndroidO_8827LGO/art$ git branch -a
  MT8827LGO_Devlopment
  android-trunk-o1.ac8227L
* mt8227LGO_Devlopment
  remotes/m/master -> origin/master
  remotes/origin/android-trunk-o1.ac8227L
  remotes/origin/master
  remotes/origin/mt8227LGO_Devlopment

3.删除本地分支

git branch -D AC8227L-AndroidO_1024x600

执行之前:
zhaojr@zhaojr-OptiPlex-7040:~/project/test_8227l/test_AndroidO_8827LGO/art$ git branch -a
  AC8227L-AndroidO_1024x600
  android-trunk-o1.ac8227L
* mt8227LGO_Devlopment
  remotes/m/master -> origin/master
  remotes/origin/android-trunk-o1.ac8227L
  remotes/origin/master
  remotes/origin/mt8227LGO_Devlopment
执行之后:
zhaojr@zhaojr-OptiPlex-7040:~/project/test_8227l/test_AndroidO_8827LGO/art$ git branch -a
  android-trunk-o1.ac8227L
* mt8227LGO_Devlopment
  remotes/m/master -> origin/master
  remotes/origin/android-trunk-o1.ac8227L
  remotes/origin/master
  remotes/origin/mt8227LGO_Devlopment

清除当前代码库的所有修改,回到刚拉代码时:

git checkout . && git clean -xdf
git pull

删除代码库中 .git和.git*相关的所有文件和目录:

find . -name ".git" | xargs rm -Rf
find -name '.git*' |xargs rm -rf

修改代码库远程库的名称和添加代码库远程指向:

修改代码库远程库的名称:

修改代码库远程指向:
git remote set-url 远程库的名称  远程库的路径
该命令用于修改远程库的名称
如android代码中的art库:
git remote set-url origin  [email protected]:atc/android/o/platform/art

zhaojiawei@zhaojingrong-S2600CP:~/ATC_AndoridOGO_8827L-mirror/art$ git remote -v
autochips       ssh://[email protected]:29418/atc/android/o/platform/art (fetch)
autochips       ssh://[email protected]:29418/atc/android/o/platform/art (push)

zhaojiawei@zhaojingrong-S2600CP:~/ATC_AndoridOGO_8827L-mirror/art$ git remote set-url flyaudio        ssh://[email protected]:29418/atc/android/o/platform/art

zhaojiawei@zhaojingrong-S2600CP:~/ATC_AndoridOGO_8827L-mirror/art$git remote -v
flyaudio        ssh://[email protected]:29418/atc/android/o/platform/art (fetch)
flyaudio        ssh://[email protected]:29418/atc/android/o/platform/art (push)

添加代码库远程指向:

添加代码库远程指向:
git remote add 远程库的名称  远程库的路径

该命令用于添加远程代码库

如android代码中的art库:
git remote add origin  [email protected]:atc/android/o/platform/art

zhaojiawei@zhaojingrong-S2600CP:~/ATC_AndoridOGO_8827L-mirror/art$ git remote -v
autochips       ssh://[email protected]:29418/atc/android/o/platform/art (fetch)
autochips       ssh://[email protected]:29418/atc/android/o/platform/art (push)

zhaojiawei@zhaojingrong-S2600CP:~/ATC_AndoridOGO_8827L-mirror/art$ git remote add origin [email protected]:/home/git/atc/android/o/platform/art

zhaojiawei@zhaojingrong-S2600CP:~/ATC_AndoridOGO_8827L-mirror/art$git remote -v
autochips       ssh://[email protected]:29418/atc/android/o/platform/art (fetch)
autochips       ssh://[email protected]:29418/atc/android/o/platform/art (push)
origin  [email protected]:/home/git/atc/android/o/platform/art (fetch)
origin  [email protected]:/home/git/atc/android/o/platform/art (push)

将多重指向全部拉到本地:

将本地库的多重指向拉到本地代码库中:
git fetch 远程代码库名

zhaojiawei@zhaojingrong-S2600CP:~/ATC_AndoridOGO_8827L-mirror/art$ git remove -v
autochips       ssh://[email protected]:29418/atc/android/o/platform/art (fetch)
autochips       ssh://[email protected]:29418/atc/android/o/platform/art (push)
other   [email protected]:/home/git/atc/android/o/platform/art (fetch)
other  [email protected]:/home/git/atc/android/o/platform/art (push)

zhaojiawei@zhaojingrong-S2600CP:~/ATC_AndoridOGO_8827L-mirror/art$ git branch -a
* android-trunk-o1.ac8227L
  remotes/autochips/android-trunk-o1.ac8227L
  remotes/m/android-trunk-o1.ac8227L -> autochips/android-trunk-o1.ac8227L
  remotes/origin/android-trunk-o1.ac8227L

zhaojiawei@zhaojingrong-S2600CP:~/ATC_AndoridOGO_8827L-mirror/art$ git fetch other
zhaojiawei@zhaojingrong-S2600CP:~/ATC_AndoridOGO_8827L-mirror/art$ git branch -a
* android-trunk-o1.ac8227L
  remotes/autochips/android-trunk-o1.ac8227L
  remotes/other/android-trunk-o1.ac8227L
  remotes/m/android-trunk-o1.ac8227L -> autochips/android-trunk-o1.ac8227L
  remotes/origin/android-trunk-o1.ac8227L
完成后other/android-trunk-o1.ac8227L就是我们从other远程库[email protected]:/home/git/atc/android/o/platform/art上拉下来的android-trunk-o1.ac8227L分支

如果本地已经有了分支,之前已经将代码checkout出来,那么执行以下命令:

git pull 远程名称  分支名称:分支名称

zhaojiawei@zhaojingrong-S2600CP:~/20181025_8227LGO/art$ git branch -a
  other_mt8227LGO_Devlopment
* mt8227LGO_Devlopment
  remotes/m/master -> origin/master
  remotes/origin/AC8227L-AndroidO_1024x600
  remotes/origin/android-trunk-o1.ac8227L
  remotes/origin/master
  remotes/origin/mt8227LGO_Devlopment
  remotes/other/mt8227LGO_Devlopment
other_mt8227LGO_Devlopment分支是由other/mt8227LGO_Devlopment基础上checkout出来
那么我们更新这个分支的最新代码更新可以执行以下命令:
zhaojiawei@zhaojingrong-S2600CP:~/20181025_8227LGO/art$ git pull other mt8227LGO_Devlopment:mt8227LGO_Devlopment
zhaojiawei@zhaojingrong-S2600CP:~/20181025_8227LGO/art$ git branch -a
* other_mt8227LGO_Devlopment
  mt8227LGO_Devlopment
  remotes/m/master -> origin/master
  remotes/origin/AC8227L-AndroidO_1024x600
  remotes/origin/android-trunk-o1.ac8227L
  remotes/origin/master
  remotes/origin/mt8227LGO_Devlopment
  remotes/other/mt8227LGO_Devlopment

zhaojiawei@zhaojingrong-S2600CP:~/20181025_8227LGO/art$ git branch log

 

你可能感兴趣的:(代码管理和编译)