日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

git 对之前的commit 进行重新签名 Resign

發(fā)布時(shí)間:2023/11/27 生活经验 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 git 对之前的commit 进行重新签名 Resign 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在向開源社區(qū)提交PR的時(shí)候如果之前的提交忘記添加sign (個(gè)人簽名/公司簽名),則社區(qū)的DCO檢查會失敗。
關(guān)于通過DCO檢查能夠確保以下幾件事情生效:

  1. 你所提交的貢獻(xiàn)是由你自己完成或者 你參與了其中,并且有權(quán)利按照開源協(xié)議提交代碼
  2. 這個(gè)貢獻(xiàn)是在當(dāng)前項(xiàng)目的基礎(chǔ)上完成的。
  3. 你能夠理解并遵守開源協(xié)議,你的貢獻(xiàn)將會被完全公開。

這個(gè)檢查對于社區(qū)來說能夠防止后面你想要回退你的commit。

基本的簽名方式就是在你git commit -m的時(shí)候增加一個(gè)git commit -s -m "xxx",這樣你提交的commit 內(nèi)容就包含了你的簽名信息

    fix the review codeSigned-off-by: BaronStack <2689496754@qq.com>

很多時(shí)候如果我們沒有配置自己的commit 縮寫的話就會忘記-s選項(xiàng),這個(gè)時(shí)候需要對之前的commit 進(jìn)行resign

大體對應(yīng)兩種情況:

  1. resign 上一次的commit
  2. resign 之前的很多次commit

針對第一種情況,很簡單:
git rebase --amend ,直接在上一次的commit內(nèi)容中增加你的簽名信息即可。

第二個(gè)情況可以執(zhí)行下面的內(nèi)容

git rebase --exec 'git commit --amend --no-edit -n -S' -i 46809e5902

大體邏輯就是針對到-i之前的commit為止(包括-i)所有的commit 都會執(zhí)行一次git commit --amend --no-edit -n -S來簽名

會進(jìn)入編輯器,直接保存退出就可以,然后不斷得執(zhí)行git rebase --continue,如果過程中有哪一個(gè)commit rebase失敗的話需要根據(jù)提示解決沖突。如果執(zhí)行過程中又不想rebase了,直接git rebase --abort即可,會將本次rebase觸發(fā)的所有的變更都回滾掉。
執(zhí)行完成之后就能git log看到所有的commit內(nèi)容都帶有你的簽名信息了。

總結(jié)

以上是生活随笔為你收集整理的git 对之前的commit 进行重新签名 Resign的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。