タイトルはgit Repositoryです.でも今はcommit historyの


私は2つの性質が似ているGitリポジトリを持っています.
一つは最近ブログで整理した文章を含むTILです.
一つは以前JavaScriptのES 6以上の文法を毎日勉強していたTIL modernJsGuide...
だからこの二つの倉庫を合併することにした.
約2ヶ月の1日1提出の中で、私の大切な芝生を守ることが一番大切です.

2つのリポジトリの準備


統合したい2つのリポジトリをAとBと呼びましょう.
Aのデータとコミット履歴をBにインポートするとします.
Bは今、ローカルにいなければならず、Aのgithubアドレスを知っています.
『TIL modernJsGuide』を『TIL』に入れるつもりです.
TILをローカルの最新状態にし、TIL modernJsGuideのリモートストレージアドレスを準備します.

リモート・リポジトリの追加


マージにはデータは必要ありませんか?
BのローカルストレージにAのリモートストレージを追加します.
git remote add [이름] [원격 저장소 주소]
ここで、名前はローカル・リポジトリに書き込まれるリモート・リポジトリのキー値であるため、任意の区別可能な値を自由に使用できます.
私の場合、TIL modernJsGuideのリモート・リポジトリはmjgとしてTILに接続されています.
接続後、現在接続されているリモート・リポジトリを確認したほうがいいです.
git remote add mjg [email protected]:shshhan/TIL_modernJsGuide.git
git remote -v

確認してみるとMJGの名前で繋がっていて良かったです

インポートとマージ


接続が完了しました.データをドラッグ&ドロップして正しくマージするだけです.
git fetch [원격 저장소 이름]
git merge [새로운 브랜치 이름]
fetchコマンドは、リモート・リポジトリからデータをドラッグした後、新しいブランチを作成します.
mergeコマンドで新しいブランチをマージすればいいです.
git fetch mjg
git merge mjg/main

私の場合、fetchコマンドを実行しました.リモートストレージに接続するときにmjgと名前を付けたからです.
新しく生成したmjg/mainをマージしました.
ただし、2つのリポジトリに関連性がない場合は、「致命的:関連しない履歴のマージを拒否」エラーが発生します.
この場合、mergeコマンドにオプションを追加することで解決できます.
git merge --allow-unrelated-histories [새로운 브랜치 이름]

これで上記のメッセージが出てくるので、軽く外に出ればいいのです.
表示されるメッセージはgitインストール時の設定によって異なります.
上のスクリーンショットのようにVimエディタに表示される場合は、escを押して:qを入力し、enterを押します.

では、成功したmergeを見ることができます.

結果の表示


ファイルはすべて正しく入力されているようですが、提出履歴も正しく入力されていますか?
git log --oneline
コミット履歴を1行として表示するコマンド.

操作の前に、既存のリポジトリのコミット履歴のみが表示されます.

ジョブが終了すると、マージされたリポジトリのコミット履歴が正しいかどうかを確認することもできます.

これで、リポジトリをリモート・リポジトリにプッシュでき、統合されたコミット履歴もリモート・リポジトリに表示されます.
リファレンス
https://velog.io/@lina 0322/git-git-repository-git-logをマージ-メンテナンス?utm_source=pocket_mylist