创建远程分支
其实就是讲本地的分支push给服务器
git push origin 本地分支名
直接取回远程仓库的某个分支,在本地修改后再push回去
服务器上有两个分支,一个master;一个test;
现在更换一台电脑,只想更新test。操作步骤
在本地创建以下命令即可
git init //初始化一个空仓库
git remote add origin git@xxxx:/xxx/xxx.git //关联远程仓库
git fetch origin test //将远程仓库的test分支取回本地
git checkout test //在本地切换到test分支
git push origin test //将本地分支推送到服务器
删除远程分支
$ Git push origin :remote_branch
或者
$ git push origin --delete remote_branch
但用git branch -a
检查, 发现origin/remote_branch还在, 这说明,remotes/origin/*
这些远程跟踪分支,仅仅是远程分支的一个缓存,并且,不能通过git fetch
命令获取到分支删除的更新
查看远程仓库状态
git remote show origin
$ git remote show origin
* remote origin
Fetch URL: git@github0123:jeremy0123/fetch.git
Push URL: git@github0123:jeremy0123/fetch.git
HEAD branch: master
Remote branches:
br01-remote tracked
br02 tracked
br03-remote tracked
master tracked
refs/remotes/origin/br03 stale (use 'git remote prune' to remove)
Local branches configured for 'git pull':
br01 merges with remote br01-remote
br03 merges with remote br03
master merges with remote master
Local refs configured for 'git push':
br02 pushes to br02 (up to date)
master pushes to master (local out of date)
发现refs/remotes/origin/br03
状态是stale(陈旧的),并且后面有命令提示。
执行以下命令即可彻底删除
$ git remote prune origin
Pruning origin
URL: git@github0123:jeremy0123/fetch.git
* [pruned] origin/br03
关于git服务器push出错:insufficient permission for adding an object to repository database
1、确定用户组正确
2、确定用户组拥有读写权限
3、配置:git config core.sharedRepository group