@Charles phản hồi là chính xác. Dù sao thì tôi đã sử dụng cái này rất nhiều lần, hầu hết là để rebase cấu hình cụ thể trên một dự án
Cấu hình sản xuất * a8f9182 (HEAD -> production)
| * cấu hình tiền sản xuất daa18b7 (pre)
| /
| * cấu hình cục bộ d365f5f (cục bộ)
| /
* 27d2835 (dev) tính năng mới tuyệt vời sẽ cứu thế giới
* | 56d2467 (chính) trạng thái nghệ thuật nhàm chán cho dự án
| /
mà tôi tạo một lệnh mới cho nó:
$ cat ~ / bin / git-rebaseshot
CAM KẾT = $ 1
DEST = $ {2: -HEAD}
git rebase $ {COMMIT} ^ $ {COMMIT} --onto $ DEST
thông thường bạn muốn tự động điền tên nhánh cho lệnh đó, vì vậy hãy thêm nó vào nguồn cung cấp chức năng này (thêm vào .bashrc hoặc .profile):
_git_rebaseshot ()
{
__gitcomp_nl "$ (__ git_refs)"
}
git autocomplete sẽ tìm kiếm nó
bạn có thể sử dụng lệnh này như sau:
# rebase config on prepro on actual HEAD
$ git rebaseshot prepro
# rebase config on local onto dev
$ git rebaseshot local dev
# rebase production config on master
$ git rebaseshot pro master
Khi bạn phân chia các tính năng một cách chính xác, khả năng có thể là vô tận.
* a8f9182 (HEAD -> postgres) cấu hình BBDD
* a8f9182 (local) cấu hình cục bộ
* a8f9182 (gỡ lỗi) cấu hình mức nhật ký
* a8f9182 (dev) tính năng mới
|
Tôi đoán đây là những gì mọi người thích làm chăn bông .
lệnh này vẫn sẽ hoạt động với bất kỳ sha / ref nào bạn cung cấp:
$ git rebaseshot <Feature branch> master
$ git rebaseshot <commit of XX> master