問題タブ [feature-branch]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
373 参照

tfs - TFS Git 機能を使用して TeamCity で複数のブランチ仕様を使用することは可能ですか?

私のプロジェクトでは、TFS 2013をソース管理リポジトリとして使用し、TeamCity 9.1.6を CI サーバーとして機能ブランチを使用しています。まもなく TFS 2015 にアップグレードする予定です (... GIT には移行できません)

GIT や Mercurial を使用する場合、複数のブランチ仕様を使用できることは知っていますが、これは非常に便利です。TFS 2013 では、Microsoft は GIT のネイティブ サポートを追加しました。

複数分岐仕様画像

すべての機能ブランチをビルドする単一のコミット ビルドを作成するために、既存の TFS サーバーを使用して複数のブランチ仕様を実行したいと考えています。

だから私の質問は:

  1. それを可能にする TeamCity プラグインはありますか? (私の可能なGIT-TFSトリックよりも簡単です)
  2. TFS 2013 が GIT をサポートしている場合、TeamCity ビルドが TFS を GIT サーバーと見なし、ここで説明されているように複数のブランチ仕様を使用するように VCS を構成できますか?

理論的には、GIT サーバーとして TFS に接続する TeamCity VCS は、それを GT サーバーと見なしますね。

0 投票する
1 に答える
77 参照

svn - トランクにリベースされた機能ブランチを統合する SVN - 変更がないにもかかわらず svn:mergeinfo が更新されるのはなぜですか?

この例は SVN 1.8 のものです。

トランクと機能ブランチで共通の手法を使用します。通常、フィーチャー ブランチはトランクの分岐によって作成されます。フィーチャー ブランチは、トランクからフィーチャー ブランチへの変更をマージ (リベース) することにより、トランクで継続的に最新の状態に保たれます。フィーチャー ブランチでの開発が完了すると、コンテンツはトランクにマージされます。

フィーチャー ブランチがマージされてトランクに戻されると、リベースによって作成されたものを含むフィーチャー ブランチへのすべての変更が、トランク内のファイル/フォルダーの svn:mergeinfo プロパティに記録されます。この結果の 1 つは、フィーチャー ブランチがトランクにマージされたときに、フィーチャー ブランチ (リベースを除く) で更新されていないファイルとフォルダーが変更済み (プロパティのみ) としてマークされることです。

なぜこれが必要なのですか?トランク ログは、トランクに関連する機能ブランチでフォルダー/ファイルの内容が変更されていないにもかかわらず、機能ブランチがトランクにマージされたときにこれらのフォルダー/ファイルが変更されたことを示しています。TortoiseSVN は、変更していない多くのフォルダ/ファイルが更新されていることを示しているため、これは開発者にとって非常に混乱しています。これは本当に望ましい動作ですか?

0 投票する
1 に答える
45 参照

git - Git 機能ブランチ: マージ コミットを 1 つだけ取得する

次の状況。私は git の機能ブランチに取り組んでおり、対応する機能が完成したら共通の開発ブランチにマージします。機能を完成させるにはかなりの時間がかかることがあるため、定期的に開発を機能ブランチにマージして、同僚からコードの更新を取得し続けます。

ここで、機能ブランチを開発にマージして終了すると、機能ブランチで行ったすべてのコミットが開発の履歴に表示されます。しかし、履歴を明確に保つために、マージ コミットは 1 つだけにしたいと考えています。私はすべての中間のものを必要としません。

それは可能ですか?

0 投票する
1 に答える
506 参照

git - すでにマージされているオリジンのリモート ブランチを削除する

「統合」という名前のブランチをマスター ブランチとして使用しており (マスター ブランチはまだありますが、今は使用していません)、そこから作成されてマージされたブランチがたくさんあります。削除されます。ローカルブランチの削除に関するこの質問を見つけましたが、特定の状況に提案を適用することについて確信が持てませんでした.

私はこれがうまくいくと思います.このコマンドを実行したくなくて、それが間違っていてレポを台無しにします.

$ git チェックアウト統合

$ git ブランチ -r --merged | grep -v 統合| sed 's/origin//:/' | xargs -n 1 git プッシュ元

0 投票する
2 に答える
61 参照

git - Gitflow と誤って他の機能をマージする

私たちは最近 gitflow の導入を開始しました。主にいくつかの YouTube ビデオといくつかのオンライン記事に従って、SourceTree 内の GUI 機能とともに。

しかし、解決したいと思っていた状況に直面しているため、何か間違ったことをしていると思います。

developer 1に取り組んでいますfeature 1developer 2に取り組んでいますfeature 2developブランチは開発用でステージング中です、masterブランチはライブ/プロダクションです

開発者 1

  1. 開発 = マスター (マスターと同期)
  2. 開発 -> 機能 1 への分岐
  3. 開発 <- 機能 1 にマージ

開発者 2

  1. 開発 != マスター (マスターと同期していません)
  2. 開発 -> 分岐機能-2
  3. 開発 <- マージ機能-2

にマージしてライブdeveloper 2に配置したい場合、問題が発生します-これには が含まれます。つまり、両方がライブになります。feature 2masterfeature 1

つまり、私たちは明らかに何か間違ったことをしています - これは私たちが明確にする必要があるものです。頭のてっぺんからこれを回避できる唯一の2つの方法は次のとおりです。

  • masterからではなく、新しい機能を作成します。develop
  • 実際に変更されたファイルのみを取得する「Cherry Pick」を使用しますmaster

私たちが望んでいる解決策は、リリース サイクルのない Web 開発プロジェクトの混合です。クライアントが機能をサインオフすると、文字通りライブになります。これを達成する方法についての提案は大歓迎です。

ありがとう

0 投票する
1 に答える
61 参照

plugins - TeamCity VCS プラグインに機能ブランチを実装する

私は現在、Plastic SCM VCS プラグインのフィーチャー ブランチのサポートを追加しています。すべての準備ができていると思います (明らかに間違っています) が、TeamCity はすべての新しい変更セットがすべてのブランチに属していることを検出します。これにより、プラグインが使用できなくなります。これは、デフォルト ブランチでの新しいコミットがすべてのアクティブなブランチでビルドをトリガーするためです。

PlasticVcsSupport拡張するクラスがありServerVcsSupportます。これはPlasticVcsSupport.getCollectChangesPolicy()方法です:

これはPlasticCollectChangesPolicyクラスの概要です: public class PlasticCollectChangesPolicy implements CollectChangesBetweenRepositories {

getCurrentStatus()新しい変更が適切に検出され、メソッドに渡された from/to 状態が理にかなっているため、メソッドcollectChanges()は正常に機能しているようです。ただし、ModificationDataTeamCity は各のブランチを見つけることができないため、返されたオブジェクトに設定する何かが欠けているようですModificationData。メソッドを使用して適切な親変更セットを設定していますaddParentRevision(String)が、何も達成されませんでした。gitプラグインコードもチェックしましたが、何が欠けているのかわかりません:-(

ModificationData の構築方法は次のとおりです。

どんな種類の助けも本当に感謝しています:-)

ありがとう!

0 投票する
1 に答える
176 参照

ios - モバイル開発のための機能分岐

私は自分の Web プロジェクトにフィーチャー ブランチを使用しています。フィーチャーごとに新しいブランチを作成し、チームの他のメンバーがフィーチャーをテストする準備ができたらプル リクエストを開きます。

Heroku レビュー アプリGithub 共同コード レビューを使用して、コードをレビューし、機能をシームレスにテストできます (プルやビルドなどは必要ありません..)。

現在、ionic2 と testflight (ios) / beta (android) プログラムを使用して、ios/android 用のモバイル アプリを開発しています。問題は、一度に 1 つのビルドしか作成できないため、機能を 1 つずつテストする必要があることです (つまり、PR1、B1、マージ PR1、オープン PR2、B2、マージ PR2 など)。開発プロセスが大幅に遅くなります。

それで、多くのモバイルビルドを同時にテストするための追加のツール/オプション/プロセスを知っていますか?

0 投票する
2 に答える
85 参照

git - 機能ブランチにないファイルに影響を与えるコミットを表示しますか?

とを指定するbranch-agit rebase origin/master branch-a、ファイル内で競合が発生することがあります。

リベースの前に (定義により) 競合がなかったことを考えると、競合は への 1 つ以上のコミットによってのみ発生した可能性があり.../file.txtます。

競合解決プロセス中に、「.../file.txt に影響を与えたオリジン/マスターからのコミット」を簡単に表示して、これらの変更をより自信を持って統合できるようにする方法がわかりません。

ABCDメインライン開発です。 EFG私のローカルブランチの開発です。へのローカル リベース中に、コミットCによりファイル/コミットで競合が発生しました。FD

デタッチされた HEAD または「リベース」状態git log -3 file.txt考えると、見たいものが表示されないように見えます。commit を適用します。CF

特定のファイルにのみ影響を与え、その範囲からのコミットのリストを取得するにはどうすればよいですか...または現在アクティブなABCDコミットは含まれませんか?EFG--rebase

0 投票する
1 に答える
806 参照

teamcity - TeamCity 機能ブランチ アーティファクトの依存関係

TeamCity (10.0.2) にカナリア ビルド (BuildA) があり、コミット時に master、develop、およびすべての feature/* ブランチをビルドします。

BuildA からアーティファクトの小さなセットを取得し、ファイルに対して FxCop を実行する別のビルド (BuildB) を作成したいと考えています。そして、BuildB に Finish Build トリガーを持たせて、BuildA がいずれかのブランチで完了すると、BuildB がそのブランチからアーティファクトを取得して実行できるようにします。

これを設定するには、いくつかのハードルがあるようです。

  1. [Edit Artifact Dependency] ボックスを開くと、ワイルドカードやパターン マッチではなく、論理的なブランチ名である [Build branch] を指定する必要があります。そのため、BuildA から生成されるすべてのビルドにアーティファクトの依存関係をセットアップする方法がわかりません。

  2. "Finish Build Trigger" にはブランチ フィルターがあり、"+:*" を挿入してすべてのブランチをキャッチできるように見えますが、それは "Artifact Dependency" ブランチ名の値とどのように一致するのでしょうか?

0 投票する
1 に答える
1131 参照

git - QA は、Gitflow ワークフローの機能分岐を使用して複数の機能を一度にテストするにはどうすればよいですか?

開発者がさまざまな機能のさまざまなブランチで作業する場合、機能ブランチから QA ビルドを提供でき、テストが完了したら「開発」とマージできることを理解しています。しかし、QA チームがかなり大規模で、一度に複数の機能をテストできる場合、異なるブランチに存在する機能を含むビルドをどうやって彼らに与えることができるでしょうか?