問題タブ [git-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 に答える
162 参照

svn - ブランチを含む Git リポジトリ全体を SVN にエクスポートする

簡単に言えば、いくつかのブランチを持つ git リポジトリがあり、すべてのブランチとコミット履歴を維持しながら、それを SVN リポジトリに移動したいと考えています。

これまでのところ、私はあまり運がありませんでした.私が見つけた方法のほとんどは、私が期待したようにブランチを移行しません. (それらは結合されるか、無視されるか、グルーに食べられます)

私は git-svn (git ローカル、SVN リモート) を使用することを計画していましたが、ドキュメンテーションから、この方法で SVN で Git を使用することは非常に可能であるという印象を受けました.. . しかし、ばか証明のチュートリアルは提供されていません!

これは可能ですか?もしそうならどのように?そうでない場合、git/svn について理解できませんか?

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

git - gitリポジトリのブランチを新しいリモート(github)にプッシュし、その履歴を非表示にします

私の組織は、githubを使用してソフトウェアのオープンソースバージョンをリリースする準備をしていますが、これに取り組む最善の方法がわかりません。

masterreleaseの2つのブランチがあり、masterにはリリースしないことを決定した独自のコンポーネントがいくつか含まれており、releaseには配布したいクリーンアップされたバージョンが含まれています。問題は、リリースブランチをgithubにプッシュするだけで、リビジョン履歴を調べることでプロプライエタリコンポーネントを取得できることです。

別のリポジトリを作成し、リリースのHEADをそこにコピーし、を実行して、git initそのリポジトリをgithubにプッシュすることを検討していました。ただし、将来的にマスターからリリースに特定のパッチをチェリーピックする機能を保持し、それらの変更をgithubにプッシュしたいと考えています。

2つの別々のリポジトリを維持せずにこれを行う方法はありますか?

ありがとう!

アップデート:

もう少し具体的に言うと、これは、現時点でのコミット履歴のようなものです。

「o」はマスターのプロプライエタリブランチのコミットであり、「c」は公開されるべきではないものを削除するコミットです(多くの場合、ファイル全体を削除するのではなく、プロプライエタリコンポーネントに依存しないように既存のファイルを作り直します)。リリースにも適用されるマスターの修正であるため、厳選されています。RELは、安全に公開できると思われるコードのタグ付きバージョンであり、履歴はまったくありません(RELタグの前にすべての専有資料が削除されたわけではないため、リリースブランチの以前のバージョンでも)。

0 投票する
10 に答える
121264 参照

git - ローカルブランチの削除を元に戻す

で必要ないくつかの実験的な変更を加えて、間違ったブランチを削除しましたgit branch -D branchName

ブランチを回復するにはどうすればよいですか?

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

git - git remote prune –予想したほど多くの剪定されたブランチが表示されませんでした

マニュアルページから:

だから私は使用して枝の束を削除しました

そして走った

ただし、プルーニングされたローカルブランチは1つだけでした。これらのブランチのいくつかは私によって作成され、いくつかは同僚によって作成されました。これは、そもそもこれらのブランチを正しく追跡していなかったことを示していますか?

0 投票する
4 に答える
5555 参照

git - Git:フェッチせずにローカルブランチをリモートトラッキングと自動的にマージする方法

想像してみてください、私にはいくつかのブランチがあります:マスター、a、b、c..。

今、私はマスターブランチと「gitpull」にいます。これにより、すべての変更がリモートサーバーからorigin / master、origin / a、origin / b ...ブランチにフェッチされ、CURRENTブランチ(マスター)がorigin/masterとマージされます。しかし、次にAブランチに切り替えて、リモートで追跡されたブランチからこれらのリモート変更を再度マージします。変更を再度フェッチすることはありません(既にorigin /ブランチにあるため)。

私が追跡する(つまり自動的に)リモートブランチを正確に指定せずにこれを行うためのより簡単な方法はありますか?

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

apache - スタンドアロン サーバー (Apache など) を効率的に分岐して使用する方法

開発ディレクトリ (django-admin.py runserver) に開発サーバーがある Rails または django を使用している場合、分岐が簡単であることがわかります。

現在、Apache (windows) が提供する php を開発しています。php ディレクトリからブランチを作成する場合、httpd.conf を編集して新しいブランチを追加する必要があります。

Apacheですぐに動作するためだけにブランチを取得する方法はありますか? 私はそれが次のようになることを望みます: http://master.project.localhost -> /projects/master,http://testing.project.localhost -> /projects/testing

ホストファイルにワイルドカードを使用できないことを読みました。これを合理化するには、DNS ソフトウェアなどを使用する必要がありますか?

また、私のプロジェクトは i ディレクトリ、http://project.localhost/masterおよびhttp: //project.localhost/testing を実行できません。動作していません

0 投票する
4 に答える
6548 参照

git - gitでマージのみのブランチを強制できますか?

私はgitを使用しており、ワークフローをサポートするために次のブランチを設定しています。

  • リリースされたソフトウェアのみを含むリリース、
  • テストグループにリリースされたソフトウェアを含むテスト、
  • 開発は、開発が行われる場所です。
  • some_topic_branch、機能などが追加されます。

トピックブランチはから分岐し、開発にマージされます。テストリリースの準備ができたら、テストは開発にマージされます。テストリリースの本番環境が承認されると、リリースはテストにマージされます。

これはすべてセットアップが簡単ですが、gitの強制オプションについて疑問に思っています。たとえば、リリースブランチでのコミットのみがテストからのマージであり、リリースブランチで直接変更が発生しないようにするポリシーを適用することは可能ですか?

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

git - GIT を実験するためのラボのセットアップ

私は初心者(6か月程度)のLinuxユーザーです。

私はかなり長い間 Git を使用していますが、今はより高度なことを学びたいと思っています。私が学びたいのは、リモートを処理/管理するさまざまな方法です。

私の質問は、「リモート」をローカルにセットアップするにはどうすればよいですか? たとえば、次のように 2 つのフォルダーを作成することは可能ですか。

GitHubのレポのように、local_branchフォルダーを追跡するようにフォルダーを設定しますか?remote_branchremote_branch

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

git - 特定のブランチへのプッシュ用にローカル ブランチを構成する

この質問が既にされている場合は申し訳ありません。

「test」という名前のブランチを持つ「git_lab」という名前のレポからクローンを作成しています

「git pull」を実行すると、「test」から「myname_test」への変更が自動的に取得およびマージされますが、git push の場合は、リポジトリとブランチ名を指定する必要があります。

$>git リモート ショー git_lab

「git pull」用に構成されたローカル ブランチ: myname_test はリモート テストとマージされます

ブランチとリポジトリ名を指定する必要がないように、「「git push」用に構成されたローカル ブランチ」を構成する方法はありますか?

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

git - git サーバーへの単純なマージのプッシュをブロックする

しばらく前に、開発者に をプッシュする前にマージの代わりにリベースを使用するように依頼しました。些細なマージをなくすことで、コミット グラフ (例: gitk、git log) を追跡しやすくなります。

ときどき、うっかりマージしてからプッシュしてしまう人がいます。些細なマージをブロックするサーバー側のフックを作成するための便利な情報やヒントを持っている人はいますか?

「些細なマージ」とは、競合のないマージを意味します。ここに例を示します。これは、git での単純なマージのより良い説明です

Update Wed Nov 10 01:26:41 UTC 2010 : すばらしいコメント、すべて! ありがとうございました。

  • 次のことを考えてみてください。私が皆さんに本当にお願いしているのは、これだけです。
    • git pull --ff-only失敗した場合は、git pull --rebase代わりに行うgit pull
  • git.git にはコミッターが 1 人か 2 人しかいませんよね?理論的には、コミット グラフをたどるのは簡単なはずですが、かなり面倒に見えます。

更新 Thu Nov 11 23:49:35 UTC 2010 :

Update Wed Dec 15 18:34:52 UTC 2010 :