Đây là một tính năng cơ bản của git nhưng hôm nay mình mới cần. Chả là mình có một git repo A
đang để public, đang host trên Github. Lúc trước khi có update thì mình pull về rồi deploy bằng tay. Nhưng thấy cũng mất thời gian, nên hôm qua mình xem cài cái Github self-hosted runner để CI/CD.
Tuy nhiên do repo public nên có khả năng bị nhồi malicious-code vào. Nên mình tạo thêm cái repo B
private cho chắc ăn. Thế nên phải tìm command merge những phần thay đổi sau này từ A
vào B
. Và đây là cách:
1. Clone B
git clone repo-b-url
2. Add remote của repo A
vào B
, mình đặt tên là dev
cd ./repo-b
git remote add dev repo-a-url
3. Fetch repo A
git fetch dev
4. Merge
git merge --allow-unrelated-histories dev/<branch-of-A>
That's it .