分类: Android平台
2013-02-20 20:13:51
本地分支master ,追踪的是远程的master
执行git branch -a
master
remote/origin/master
master为本地,remote/origin/master为远程
git push origin master:master 表示将本地的master的提交提交到仓库的master分支 。
在提交是犯了一个错误 将 该命令写成了 git push origin master:origin/master 结果将本地的commit提交到了远程的origin/master分支 ,相当于在远程创建了一个分支并提交
git branch -a
master
remote/origin/master
remote/origin/origin/master // 这个就是误提交的分支
这个时候 执行 git push origin :origin/master 即可删除远程分支
为了保险起见 , 在push之前 先执行 git config -l 看下本地的分支追踪的是远程的哪个分支,直接将该分支的名字复制下来然后粘贴到 git push origin master: XXX 的XXX的位置即可
-----------------------------------------------------------------------------
转:
http://blog.csdn.net/free2o/article/details/3981588
可以用 -m 参数来选择 repository 中的某一个特定的 manifest 文件,如果不具体指定,那么表示为默认的 namifest 文件 (default.xml) repo init -u git://android.git.kernel.org/platform/manifest.git -m dalvik-plus.xml
可以用 -b 参数来指定某个manifest 分支。
repo init -u git://android.git.kernel.org/platform/manifest.git -b release-1.0
可以用命令: repo help init 来获取 repo init 的其他用法
4. repo sync [project-list]
下载最新本地工作文件,更新成功,这本地文件和repository 中的代码是一样的。 可以指定需要更新的project , 如果不指定任何参数,会同步整个所有的项目。
如果是第一次运行 repo sync , 则这个命令相当于 git clone ,会把 repository 中的所有内容都拷贝到本地。 如果不是第一次运行 repo sync , 则相当于 git remote update ; git rebase origin/branch . repo sync 会更新 .repo 下面的文件。 如果在merge 的过程中出现冲突, 这需要手动运行 git rebase --continue
5. repo update[ project-list ]
上传修改的代码 ,如果你本地的代码有所修改,那么在运行 repo sync 的时候,会提示你上传修改的代码,所有修改的代码分支会上传到 Gerrit (基于web 的代码review 系统), Gerrit 受到上传的代码,会转换为一个个变更,从而可以让人们来review 修改的代码。
6. repo diff [ project-list ]
显示提交的代码和当前工作目录代码之间的差异。
7. repo download target revision
下载特定的修改版本到本地, 例如: repo download pltform/frameworks/base 1241 下载修改版本为 1241 的代码
8. repo start newbranchname
创建新的branch分支。 "." 代表当前工作的branch 分支。
9. repo prune [project list]
删除已经merge 的 project
10. repo foreach [ project-lists] -c command
对每一个 project 运行 command 命令
11. repo status
显示 project 的状态