当推送到Heroku上托管的存储库时,必须执行以下命令:
git push heroku master
Run Code Online (Sandbox Code Playgroud)
在这个命令中做什么heroku和master指示什么?git如何知道在哪里推送?(git路径)
此外,我不知道我可以heroku rename用来重命名一个应用程序,所以之前,说我使用的应用程序名称trytryheroku现在我使用,heroku create real-thing但如果我推,它仍然推送到trytryheroku ...有没有办法推送到真实的东西呢?
Joh*_*non 98
'heroku'部分是您已设置的遥控器的名称 - 当您第一次创建一个指向您的应用程序的git远程调用'heroku'时创建一个heroku应用程序 - 如果您在项目中键入'git remote'将显示远程端点.没有什么可以锁定你使用'heroku'作为遥控器的名称 - 如果你的应用程序有多个环境,你可能有遥控器命名生产或升级.
'master'部分是您希望推送到远程的本地分支.如果您在功能分支中进行开发,例如名为"myfeature",并且您希望将其部署到heroku,那么您可以这样做;
git push heroku myfeature:master
Run Code Online (Sandbox Code Playgroud)
附加:master在这里说将我的本地myfeature分支推入master远程分支 - 注意:heroku只能从主分支部署.
如果你重命名一个应用程序,heroku git remote url会改变 - 做一个git remote -v 会显示你的应用程序正在使用的git repo,你可能需要删除你的旧heroku来源并添加新的,git remote rm heroku然后git remote add heroku git@newgitpathfromcontrolpanel
要了解有关Git的更多信息,我会推荐这本书
Nab*_*med 40
第1部分:"git如何知道在哪里推送?"
在执行上述命令之前:
$ git push heroku master
Run Code Online (Sandbox Code Playgroud)
总是很少有其他步骤可以执行:安装Git和Heroku,创建本地Git仓库,注册到heroku,通过命令行登录heroku,创建heroku句柄到托管点(在第2部分中解释)
1.本地Git存储库:
$ git init
Initialized empty Git repository in .git/
$ git add .
$ git commit -m "my first commit"
Created initial commit 5df2d09: my first commit
44 files changed, 8393 insertions(+), 0 deletions(-)
create mode 100644 README
create mode 100644 Procfile
create mode 100644 app/controllers/source_file
...
Run Code Online (Sandbox Code Playgroud)
2.注册(编辑)Heroku并通过命令行登录:
$ heroku login
Enter your Heroku credentials.
Email: user@example.com
Password:
Could not find an existing public key.
Would you like to generate one? [Yn]
Generating new SSH public key.
Uploading ssh public key /Users/adam/.ssh/id_rsa.pub
Run Code Online (Sandbox Code Playgroud)
所以通过运行$ git push heroku master你已经将代码/应用程序推送到Heroku.
第2部分:但是heroku和大师表示什么?
它比Heroku更像是一个Git问题 - Heroku是一个托管平台,它依赖于Git(分布式版本控制系统)进行部署.
'推送'的基本概念是将我们在本地(在我们的工作机器中)的一些东西(文件,应用程序,...)推送到其他地方,在这种情况下是远程存储库(远程机器).
在使用'push'之前的Git中,我们创建了一个远程(句柄),它作为对远程存储库(完整URL)的引用,我们使用以下命令:
$ git remote add <remote-name-of-our-choice> <URL-where-you-be-pushing-yourapp>
Run Code Online (Sandbox Code Playgroud)
'push'命令的基本结构是:
$ git push <remote-name> <branch>
Run Code Online (Sandbox Code Playgroud)
所以$ git push heroku master实际上是将你的代码/ app /文件(从一些本地Git仓库)推送到远程仓库'heroku'.
想知道这个'heroku'遥控器是什么时候创建的,它是在你执行$ heroku create时添加的
$ heroku create
Creating stark-fog-398... done, stack is cedar
http://stark-fog-398.herokuapp.com/ | git@heroku.com:stark-fog-398.git
Git remote heroku added
Run Code Online (Sandbox Code Playgroud)
请注意最后一行" Git remote heroku added ".
为了使它更清楚,这是一个Git命令来检查/输出所有的遥控器:$ git remote -v将显示类似于以下内容
$ git remote -v
heroku git@heroku.com:somerepo.git (fetch)
heroku git@heroku.com:somerepo.git (push)
Run Code Online (Sandbox Code Playgroud)
因此我们可以假设以下命令在某处执行(隐式),当你执行$ heroku create时,因此创建heroku远程某些heroku repo(url)*
$ git remote add heroku git@heroku.com:somerepo.git
Run Code Online (Sandbox Code Playgroud)
Wil*_*Ayd 11
heroku是heroku gem的一部分,需要帮助推动,而master只是你正在推动的git分支.git知道要推送到哪里,因为您创建了一个heroku应用程序,自动设置了推送,您可以通过键入来查看
git remote -v
Run Code Online (Sandbox Code Playgroud)
如果您需要更改它删除它,git remote rm heroku然后添加yoru新应用程序git remote add heroku git@heroku.com:your-application-15.git
| 归档时间: |
|
| 查看次数: |
67968 次 |
| 最近记录: |