3

gitにあり、herokuにデプロイされるプロジェクトがあります。リモートURLはgit@heroku.com:myappname.gitであり、.git/configは次のようになります。

[core]
  repositoryformatversion = 0
  filemode = true
  bare = false
  logallrefupdates = true
[remote "origin"]
  fetch = +refs/heads/*:refs/remotes/origin/*
  url = git@heroku.com:myappname.git
[branch "master"]
  remote = origin
  merge = refs/heads/master

このアプリのステージングサイトとして使用したい「myappname-staging」という新しいherokuアプリを作成しました。「マスター」ブランチが本番リモートにプッシュし、「開発」ブランチがステージングリモートにプッシュするように設定することを考えていました。これは、この状況を処理するための賢明な/従来の方法ですか?

私はこれを行う方法を完全に理解することはできません。herokuでステージングアプリを作成すると、次のように返されます。

Creating myappname-staging.... done
http://myappname-staging.heroku.com/ | git@heroku.com:myappname-staging.git
Git remote heroku added

そして私の設定は次のようになります:

[core]
  repositoryformatversion = 0
  filemode = true
  bare = false
  logallrefupdates = true
[remote "origin"]
  fetch = +refs/heads/*:refs/remotes/origin/*
  url = git@heroku.com:myappnamestef.git
[branch "master"]
  remote = origin
  merge = refs/heads/master
[remote "heroku"]
  url = git@heroku.com:myappname-staging.git
  fetch = +refs/heads/*:refs/remotes/heroku/*
[remote "staging"]
  url = git@heroku.com:myappname-staging.git
  fetch = +refs/heads/*:refs/remotes/staging/*

誰かが私をまっすぐに設定できますか?

ありがとう、マックス

4

1 に答える 1

5

これを追加:

[branch "development"]
  remote = staging
  merge = refs/heads/master

これは、コマンドラインから次の方法で実行できます。

$ git config branch.development.remote staging
$ git config branch.development.merge refs/heads/master

これにより、ステージング時developmentにブランチを追跡するためのブランチが設定されます。master

于 2011-05-09T16:43:19.430 に答える