[解決済み] GitHubからGitLabへのGitリポジトリフォーク
質問
ある人のプロジェクトに修正を加えたいと思います。そのプロジェクトはGitHub上に存在します。
私はGitHub上でフォークを作成し、修正を実装することができました。
しかし、私はGitHub上ではなくGitLab上にフォークを作成したいと思います。
それは可能ですか?どのように?
この記事を読みました。 https://about.gitlab.com/2016/12/01/how-to-keep-your-fork-up-to-date-with-its-origin/
とにかく、私の場合はどうしたらいいのかわかりません。
- どうにかして GitHub からプロジェクトの GitLab 上でフォークを作成すればよいのでしょうか。
- あるいは、GitHubからプロジェクトのGitLab上のミラーを作成すべきでしょうか?
- あるいは、GitLab上にミラーを作成し、そのミラーをフォークするべきでしょうか?
- あるいは、まったく別のことをすべきでしょうか?
正しいアプローチとは。
ありがとうございます。
アップデイト
GitLabのリポジトリミラーリングはおそらく意味をなさない。自分のGitHubリポジトリのミラーをGitLab上に作成することはできますが、他の人のリポジトリのミラーを作成することはできないのです。
https://docs.gitlab.com/ee/workflow/repository_mirroring.html
今まではこんな感じでした。
元の GitHub プロジェクトを私のローカルマシンにクローンしました。私のローカルリポジトリの新しいブランチに修正をコミットしました。GitLab で空のプロジェクトを作成しました。ローカルリポジトリのoriginをGitLabの空のプロジェクトに設定し、両方のブランチをGitLabにプッシュしました。ローカルリポジトリのupstreamをGitHubリポジトリに設定しました。
元のGitHubリポジトリからGitLab上のリポジトリに新しいコミットを取得したい(つまりリポジトリを同期したい)場合、中間段階として自分のローカルリポジトリを使ってこれを行うことができます。しかし、GitHub上のレポとGitLab上のレポの間には直接的な接続がないのです。私の設定は正しいのでしょうか?GitHub上でフォークすれば、何か違いがあるのでしょうか?
どうすれば解決しますか?
変更を追跡するだけなら、まず GitLab (あるいは他の方法でも) で空のリポジトリを作成し、それを自分のコンピューターにクローンします。
次に、GitHub プロジェクトを " アップストリーム "でリモート。
git remote add upstream https://github.com/user/repo
これで、変更があれば上流から取得し、プルできるようになりました。(アクセス権があれば、プッシュやマージも可能です)。
git pull upstream master
最後に、自分のGitLabリポジトリにプッシュバックします。
git push origin master
手動でアップストリームをpull/オリジンをpushしたくない場合、GitLabは設定 => Repository => Mirroring repositoriesでミラーリング機能を提供しています。
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] git pull」と「git fetch」の違いは何ですか?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] Git リポジトリを以前のコミットに戻すにはどうすればよいですか?
-
[解決済み] 現在のGit作業ツリーからローカル(未追跡)ファイルを削除する方法
-
[解決済み] Git リポジトリでのマージの衝突を解決するには?
-
[解決済み] ローカルの Git リポジトリが元々クローンされた URL を特定するにはどうすればよいですか。
-
[解決済み] GitHubでフォークされたリポジトリを更新または同期するにはどうすればよいですか?
-
[解決済み】ローカルのGitブランチの名前を変更するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Git, fatal: リモートエンドが予期せずハングアップしました。
-
[解決済み】マージ後のコミットでGitエラー - fatal: マージ中に部分コミットができない
-
[解決済み】以下の追跡されていないワーキングツリーファイルは、マージによって上書きされますが、私は気にしません。
-
[解決済み】なぜ「git commit」は私の変更を保存しないのですか?
-
[解決済み] git rebase fatal: 必要なリビジョンは1つです。
-
[解決済み] 現在の支店にはトラッキング情報がありません
-
[解決済み] .gitignore と "以下の追跡されていない作業ツリーファイルはチェックアウトによって上書きされるでしょう"
-
[解決済み] Git エラー : 'upstream' は git リポジトリでないようです。
-
[解決済み] git update-index --assume-unchanged <file> を元に戻す。
-
[解決済み] "ダウンストリーム "と "アップストリーム "の定義