問題タブ [subtree]
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.
git - git サブツリーのマージにパッチを適用するにはどうすればよいですか?
サブツリーのマージを実行して、サブプロジェクトを git リポジトリに追加しました。サブプロジェクトにパッチを適用する必要がありますが、「git apply -v patch_name.patch」を実行しても何も返されません。エラー メッセージは表示されず、ファイルも変更されません。
サブプロジェクトを個別に (つまり、サブディレクトリ /tmp に) 複製し、それをメイン プロジェクトの下のサブプロジェクト ディレクトリにあるものと比較してみました。ディレクトリは同じです。
/tmp の下でクローンに対してパッチを実行すると、期待どおりに適用されます。この問題は、サブプロジェクト ディレクトリがサブツリー マージの結果であるという事実に関連しているようです。
新しいクローンの下にあるファイルにパッチを適用してから、メイン プロジェクトの下のサブプロジェクト ディレクトリにあるファイルにコピーすることができると思います。そんなことしなくていいみたいです。これを回避するより良い方法はありますか?
javascript - JavaScript InfoVis Toolkit の Spacetree のサブツリーの向きを変更する
JIT (JavaScript InfoVis Toolkit) の Spacetree を使用しています。例: http://thejit.org/static/v20/Jit/Examples/Spacetree/example1.html
ツリー全体の向きを上、右、下、または左に変更するのは簡単です。
..しかし、メインツリーの特定のサブツリーでこれを行いたいと思います。これまでのところ、私はこれを理解することができませんでした。基本的に Spacetree を使用してサイト マップを表示していますが、デフォルトでサイト全体が途切れることなく表示されるようにしたいと考えています。ツリー全体が表示されるようにオプションを設定しました (制約: false、levelToShow: 3) が、ツリー自体がウィンドウに対して大きすぎます。これを完全に回避することは不可能かもしれませんが、特定のサブツリーの向きを変更すると (おそらく深さに基づいて?)、ツリーが占めるスペースが最適化され、そのコンテンツの多くまたはすべてが表示されます。
説明だけではわかりにくいかもしれませんが、ツリーのキャンバスのサイズはウィンドウのサイズです。
前もって感謝します!返信をお待ちしております。
git - gitsubtreepushが変更をサブツリープロジェクトにプッシュバック
以下の簡単な説明:コミットメッセージをサブツリーにプッシュしたいのですが、そのツリーに適用されるメッセージのみです。どうすればよいですか?
私には2つのプロジェクトがMaster
ありSlave
ます。 Slave
チェックアウトされたのサブツリーとしてMaster
チェックアウトされますlib/slave
。git subtree merge --prefix=lib/slave --squash projects/slave
ここで、チェックアウトされprojects/slave
たブランチは次の場所にSlave
あります。
ブランチ:
マスタープロジェクト/スレーブ→スレーブ
現在、私は自分のmaster
ブランチに取り組んでおり、両方のプロジェクトの一部であるファイルにコミットし、すべてが順調に進んでいます。今、私は変更をプッシュバックしたいと思いますSlave
:
- gitチェックアウトスレーブ
- gitマージ??? 主人
lib/slave
通常のマージを行うと、のファイルが変更されたかどうかに関係なく、マスターへのコミットごとにコミットが取得されます。または、を実行して--squash
1つのコミットしか取得できませんが、ログメッセージが失われます。
では、適切なログメッセージを取得するにはどうすればよいですか?たとえば、master
ログ履歴が次の場合:
- マスターに画像を追加
- スレーブのみで変更されたファイル
- マスターのみへのその他の変更
- マスターとスレーブの変更されたファイル
これを追加したいSlave
:
- スレーブのみで変更されたファイル
- マスターとスレーブの変更されたファイル
git - gitを使用してサブディレクトリにwordpressをインストールしますが、gitサブモジュールは使用しません
私は、gitを使用してローカルホストからライブワードプレスワークフローに取り組んでいます(MarkJaquithのWordpressLocal Dev投稿に基づいています)。私のファイル構造は次のようになります
local.dev
- 。ギット
- index.php
- .htaccess
- wp-config.php
- local-config.php(無視されます)
- コンテンツ/テーマ/
- コンテンツ/プラグイン/
- コンテンツ/アップロード/(無視)
- コア/(ワードプレスコア)
私がやりたいのは、githubから最新のワードプレスを取得してcore /に入れ、アップグレードプロセスが次のようになるようにすることです。
しかし、Wordpressを自分のディレクトリに置く方法を考え出すのは大変な時間です。
- svnを使用する
- git pullをlocal.devに使用し、ファイルをcore/に手動で移動します。
私は何が欠けていますか?
ありがとう
git - サブツリーマージ戦略を使用すると、履歴がマージされません
外部の SVN リポジトリをリポジトリのサブツリーとして「サブツリー マージ」して使用しようとしています。これにより、ライブラリ内のファイルの履歴がそのまま保持されるはずですが、機能していません。マスター ブランチのサブツリーにマージされたライブラリには履歴がありませんが、それらを追加したときのコミットについてです。
これを機能させるために私がやっていることは次のとおりです。
これは「機能します」が、私が言ったように、履歴を見ると、libYAML リポジトリからの完全な履歴が表示されることを期待していますが、そうではありません-上記のとおりです。
algorithm - ルートノードから展開されたすべてのサブツリーを生成するにはどうすればよいですか?
ルートノードから展開されたすべてのサブツリーを生成するには、効率的なアルゴリズムが必要です。アルゴリズムは、どのツリー構造でも機能するはずです。誰かがコードを投稿できますか?
たとえば、ツリーのエッジを0-> 1、0-> 2、2->3とするとます。6つのサブツリーがあります:0、
0,1
0,2
0、1、2
0、2、3
0、1、2、3
c - BST C言語でサブツリーを削除するには?
ノードとノードのサブツリーを削除するポップ機能を作りたいです。これが私のコードです
ポップを使用する前に、事前機能はうまく機能します。でもポップ機能を使ったらブレイク。誰がどこが間違っているのか知っていますか?
algorithm - 部分的なサブツリー マッチング アルゴリズム
フォーラムを検索しましたが、他の同様の質問が必然的にこの質問に関連しているかどうかわかりませんでした。
私がやろうとしているのは、サブツリーをオブジェクトのツリーに一致させることです。
接尾辞ツリーまたはオートマトンに基づくパターン マッチング アルゴリズムがあることは知っていますが、それらがここに適用されるかどうかはわかりません。
ツリーの全体的な構造や赤いノードに子があるかどうかに関係なく、図の赤いノードで指定されたサブツリーをより大きなツリーと一致させようとしています。
単純なパターン マッチングが機能しない理由は、ノードの順序付け (post/preorder、幅) が使用できないためです。
そのため、サブツリーのルートから開始し、ノードとその子を照合しようとする再帰アルゴリズムを作成することを考えています。
そのような(効率的なアルゴリズム)が存在するかどうか疑問に思っていました。これがすでに尋ねられている場合はお詫び申し上げます。
git - git subtree push を使用した場合の「致命的: 不良オブジェクト」エラー
これは初心者の質問ですが、私はこれを解決するために銃の下にいます。レポの破損のように見えるgit サブツリーに関する奇妙な問題を継承しました。
シナリオは次のとおりです。git ベースのプロジェクト A のサブツリーがプロジェクト B で使用されています。デプロイ スクリプトの使用の一部で、サブツリーがプロジェクト B のリポジトリにプッシュされます。
git サブツリー プッシュ -P サブ/パス/名前 --squash git@github.com:MyCo/project_b.git projectb_branch
コミットのプッシュを開始し、失敗します
ソース リポジトリの git ログで SHA を検索しました。コミットに表示されます:
ターゲット リポジトリ (project_b) には実際にその SHA でのコミットがありますが、ソース リポジトリにはありません。サブツリー シェル スクリプトを調べてみたところ、git log (git log -l --pretty=format:'%T' {sha} を呼び出す toptree_for_commit 関数内) でそのオブジェクトを検索しようとすると、失敗していることがわかります。
この時点で、私は頭を悩ませていますが、解決策を見つけようとしています。限られた知識が許す限りこれを調査したので、解決策に少し近づくためのヒント、トリック、または RTFM を歓迎します。
心から感謝します!