問題タブ [git-fork]
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 - ローカルのフォークされたリポジトリと、元のリポジトリに加えられた可能性のある変更を比較するにはどうすればよいですか?
フォークしたリポジトリのローカル クローンを元の/アップストリーム リポジトリと比較して、プル/マージが必要なコミットが行われているかどうかを確認したいと考えています。これをコマンドラインから実行したいと思います。
次のコマンドを使用して、元のリポジトリをリモートのリストに追加しました。
これは、分岐のトピックに関する Github の独自のページで概説されています。
ただし、ここでアドバイスされているように、またはgit diff upstream
ここ でアドバイスさgit diff upstream/master
れているように実行すると、次のようになります。git diff master upstream/master
コマンドgit diff origin/master
はエラーを返しません (またはそれに関するものは何も返しません)。私は何かを逃しましたか?
git - GIT: フォーク、変更の適用、プル リクエスト @ github.com の作成 - もっと簡単な方法はありますか?
github.com にプロジェクトがあり、私のマシンには SourceTree があります。プロジェクトから分岐し、変更を適用し、プルリクエストを作成してプロジェクトにマージする必要があります。
github.com で fork ボタンをクリックし、SourceTree で [Clone/New] をクリックして、ローカル マシンのリポジトリをプルし、変更を適用して、github にプッシュするよりも良い方法はありますか? .com に移動し、github.com で [Pull Request] ボタンをクリックします。
それはうまくいきますが、もっと簡単な方法があるかどうか知りたいですか?
上で説明した方法の短所は、小さな変更を適用する場合でも、毎回プロジェクト全体をダウンロードする必要があることです。プル リクエストを作成するためのより簡単で高速な方法はありますか?
SourceTree はプル リクエスト オプションを提供していないようです。
ありがとうございました。
git - 分岐したプロジェクトを Github プロファイルから削除する方法
誤って github プロジェクトの fork ボタンをクリックしてしまいました。ただし、github プロファイルにプロジェクトを表示したくありません。
GitHub でパブリックにフォークされたプロジェクトを削除するにはどうすればよいですか?
wordpress - フォークされたリポジトリをミラーからオリジンに変更する
私のチームは、実際には wordpress ユーザー向けのコードを表示するために使用されるミラーであるレポをフォークしていました。このレポをフォークして wordpress プラグインのいくつかを更新しました。変更をそのミラーにプッシュしようとすると、エラー メッセージが表示されました。
このリポジトリは単なるミラーであり、プル リクエストは監視されず、ここでは受け入れられません。変更をこのプラグインに戻す方法については、公式ページを参照してください。存在しない場合は、WordPress.org のサポート フォーラムに新しいトピックを投稿してこれに対処することをお勧めします。
その後、元のリンクが提供され、.git/config ファイルの URL を変更しようとしました (ここで提案されているように:レポ ミラーを新しいアップストリーム レポに同期する方法) を新しいレポに変更しようとしましたが、403 エラーが発生しました:
エラー: 要求された URL がエラーを返しました: https://github.com/shanaver/social-hashtags/info/refsへのアクセス中に 403 致命的: HTTP 要求が失敗しました
他にもやらなければならないステップがあると感じていますが、githubに関してはかなり新しいです。
もちろん、新しいリポジトリをフォークして、作業したすべてのコードを貼り付けることができますが、この変更でさまざまな作成者の作業とコミット履歴をすべて上書きしたくありません。
linux - サーバー上の Git フォークを重複排除する
複数の Git リポジトリを含むフォルダー内のすべての重複オブジェクトをハードリンクする方法はありますか?
説明:
会社のサーバー (Linux マシン) で Git サーバーをホストしています。アイデアは、すべてのユーザーがプッシュアクセスを持っていないメインの正規リポジトリを持つことですが、すべてのユーザーは正規リポジトリをフォークします (正規リポジトリをユーザーのホームディレクトリに複製し、実際にハードリンクを作成します)。
/canonical/Repo /Dev1/Repo (最初に複製されたときに /canonical/Repo にハードリンクされたオブジェクト) /Dev2/Repo (最初に複製されたときに /canonical/Repo にハードリンクされたオブジェクト)
これはすべてうまくいきます。問題は次の場合に発生します。
Dev1: サーバー (/Dev1/Repo) のフォークに巨大なコミットをプッシュします Dev2: ローカル システムでそれをフェッチし、独自の変更を加えて、サーバー (/Dev2/Repo) の自分のフォークにプッシュします
(現在、同じ「巨大な」ファイルがサーバー上の両方の開発者のフォークに存在します。ハードリンクは自動的に作成されません。)
これは私のサーバースペースを狂ったように食い尽くしています!
サーバースペースが節約され、各開発者が自分のローカルマシンで自分のフォークから複製されたときにすべてのデータを取得できるように、2 つのフォーク間で複製されている、またはその点で標準的なオブジェクト間にハードリンクを作成するにはどうすればよいですか?
git - フォークされた後、Git リポジトリのブランチは使用できません
master
私は2つのブランチを持つかなり標準的なgithubリポジトリを持っていsome_branch
ます.
私の友人は、私が行ったことのいくつかを見て、おそらくそれを変更したかったので、指示に従ってフォークしました。彼が github でオンラインになっているとき、レポの両方のブランチを見ることができますが、ターミナルを使用してブランチに切り替えようとすると、そのようなブランチがないことが示されます。
私たちは両方とも私のブランチで働きたいと思っています。どうしたらいいの?
git - GitHub チームにプライベート フォークのみを読み書きする権限を与える方法はありますか?
私は基本的な GitHub アカウントしか持っていない学生です。私と他の 3 人の同級生は、大学のコースでソフトウェア会社の担当者と協力するためにグループを結成しました。
同社にはプライベート GitHub リポジトリがあります。リポジトリを共有するには、次の 4 つの要件を満たす必要があります。
- リポジトリにアクセスできるのは 1 人だけにする必要があります
- レポにないグループのレポを用意する
- リポジトリのブランチから変更をプルする機能がある
- 私たちの変更をレポにプッシュ/マージする機能を持っている
彼らのレポのフォークが完璧だと思っていました。ただし、GitHub でプライベート リポジトリを使用するのはこれが初めてなので、現在の障害は予想していませんでした。フォークされたプロジェクトに共同作業者を追加する権限がありません。
私は2つの可能な解決策を考えていますが、これらが可能かどうかはわかりません:
- 会社の担当者は、組織内にチームを作成して、(元のプロジェクトではなく) フォークされたプロジェクトのみに読み取りおよび書き込みアクセスを許可できますか?
- プライベート リポジトリを作成できる GitHub アカウントを持っている場合、共同作業者を追加できますか? (これで何も変わらないと思いますか?)
それとも、彼らの要件を満たすためのより良い方法はありますか?
git - Github スイッチング フォークの親
ここで関連する質問を参照してください。
そこで説明されているシナリオは、彼がプロジェクトの所有権を取得し、フォークされたレポを「通常の」ノードに変換したいと言っています。回答は、Github サポートを要求することによってのみこれを行うことができることを示唆しています。
これのさらなる問題は、私がプロジェクトの元のフォークマスターをフォークした場合 (それは「公式」のものであるため)、後で新しい人がプロジェクトを所有していることに気づき、彼のレポに切り替える必要があることです。 、私のオリジナルのものではなく。それで、私は何をすべきですか?
gitに「リモート」を追加するだけでよいことはわかっていますが、プルリクエストは古いリポジトリではなく新しいリポジトリに送信する必要があるため、これは解決策ではありません。
git - サブモジュールがフォークではなく元のコードをプルするのはなぜですか?
私はvagrant +chef + magentoのセットアップに取り組んでおり、必要なものに非常に近いオープンソースソリューションを見つけました。サブモジュールを使用するリポジトリをフォークしました。また、サブモジュールの 1 つをフォークしました。このサブモジュールとメイン リポジトリに変更を加え、それぞれのフォークにプッシュ バックしました。メイン リポジトリのフォークに対する変更の 1 つは、.gitmodules ファイルに対するものでした。これは、フォークされたサブモジュールが、フォークされたメイン プロジェクトで確実に使用されるようにするためです。フォークの代わりに元のサブモジュールが毎回プルされるため、このリンクはどういうわけか正しくありません。
.gitmodules
フォークされたリポジトリ
デバッグの試み
この SO の回答とこの SO の質問をトラブルシューティング ガイドとして使用しました。それぞれのさまざまな答えに従うことは失敗しました。
フォークの git リポジトリの 特定のサブモジュール セクションを見ると、これらが正しくリンクされていることが証明されているようです。vagrant_magento または含まれている参照タグをクリックすると、ここで使用したいサブモジュール フォークが表示されます。それでも、このページには 1 年以上更新されていないと書かれているため、混乱してレポをプルダウンし、実行してgit submodule update --init
も古いサブモジュールがプルされます。
どんな助けでも大歓迎です、ありがとう!
git - Git リポジトリと履歴ハイジンク
特定のプロパティを持つさまざまな GitHub リポジトリの束をマージしようとしていたとします。つまり、これらのリポジトリのほとんどには、外部の読み取り専用リポジトリの作業ツリーのさまざまな履歴状態をミラーリングするさまざまな tarball のコピーであるコンテンツがあります。
ただし、問題のリポジトリの1つには、その作業ツリー内のフォルダーの内容しか含まれていません。他のすべてのリポジトリがコンテンツを更新する多くの tarball ダンプ コミットを共有していることを考えると、新しいリポジトリを作成して、他のすべてのリポジトリが誤ったものであってもそのフォークになるように設定できますか?
それが可能である場合、新しいリポジトリは逆マージされたリポジトリからのすべての履歴を保持できますか? それでも、そのような操作を行うにはどうすればよいでしょうか。