新手请教:Git 里面的 origin 到底代表啥意思?

2014-10-03 15:33:30 +08:00
 click
本地代码仓名称:cangku
在本地创建一个分支:cangku1
然后我想把这个分支推送到远端,查看语法是git push origin master
我以为origin代表代码仓名称,所以Bash执行:
git push cangku cangku1
没成功,提示fatal: 'cangku' does not appear to be a git repository
换成git push cangku1 cangku1也不行
最后改执行:
git push origin cangku1
成功。

现在有点凌乱了,我一直以为origin是表示代码仓名称,以前遇到origin 替换成代码仓名称也没出错,为何在这里就不行了?
22880 次点击
所在节点    问与答
15 条回复
surftheair
2014-10-03 15:38:04 +08:00
root?
messense
2014-10-03 15:41:39 +08:00
origin 是 remote 名,git remote 可以看看有哪些 remote,git remote add 可以添加 remote...
skydiver
2014-10-03 15:42:15 +08:00
git remote -v
看一下列出来的仓库名称是啥。
chemzqm
2014-10-03 15:43:51 +08:00
git remote -v 查看所有的远程仓库,没有 cangku 的话要先添加
sanddudu
2014-10-03 15:44:17 +08:00
origin 是默认的远程版本库名称
你可以在 .git/config 之中进行修改

事实上 git push origin master 的意思是 git push origin master:master (将本地的 master 分支推送至远端的 master 分支,如果没有就新建一个)
click
2014-10-03 15:48:00 +08:00
click
2014-10-03 15:51:54 +08:00
@sanddudu 那origin是否能替换成远程版本库名称?
sanddudu
2014-10-03 16:01:20 +08:00
@click 这个是默认代替所有版本库名词的
换掉了你也不好记,推荐还是保留着,记得工作目录就好了
alsotang
2014-10-03 16:31:58 +08:00
远端 repo 的默认约定命名而已。技术上说,没有特殊意义。
jacob
2014-10-03 17:11:10 +08:00
@click 能啊

origin是git的config里定义的,远端服务器名(我理解的),比如config是这样定义的

[remote "origin"]
url = https://github.com/sample/sample_app.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
[remote "heroku"]
url = git@heroku.com:sample.git
fetch = +refs/heads/*:refs/remotes/heroku/*

--------------

git push origin master //推送到github
git push heroku // 推送到heroku
julyclyde
2014-10-03 17:53:48 +08:00
clone回来的working copy才有origin,否则就需要手工设置
julyclyde
2014-10-03 17:54:23 +08:00
@click 名称不具备远程意义。远程只有URL
konakona
2014-10-03 17:55:12 +08:00
前几天帮同事在windows下配GIT,由于我很早前就弄了其他版本所以不是orgin了。但每次都忘记(windows下是用小乌龟),要改也忘了怎么改=,,= 到OSX下又会了,真是的……
xpol
2014-10-03 20:38:41 +08:00
试试 SourceTree 看看合不合你口味:

* Windows / Mac 通用
* 支持 Git 和 Mercurial
* 启动慢,尤其是Windows下

http://www.sourcetreeapp.com
rming
2014-10-03 20:57:12 +08:00
@xpol 没有linux版,虽然我不需要,但我一直耿耿于怀= =

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/136903

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX