diff -ur a/hgext/rebase.py b/hgext/rebase.py
--- a/hgext/rebase.py	2022-03-01 16:39:03.000000000 +0100
+++ b/hgext/rebase.py	2022-03-10 17:51:06.110251447 +0100
@@ -548,7 +548,10 @@
         date = self.date
         if date is None:
             date = ctx.date()
-        extra = {b'rebase_source': ctx.hex()}
+        if repo.ui.configbool(b'rebase', b'norebasesource'):
+            extra = {}
+        else:
+            extra = {b'rebase_source': ctx.hex()}
         for c in self.extrafns:
             c(ctx, extra)
         destphase = max(ctx.phase(), phases.draft)
diff -ur a/mercurial/configitems.py b/mercurial/configitems.py
--- a/mercurial/configitems.py	2022-03-01 16:39:03.000000000 +0100
+++ b/mercurial/configitems.py	2022-03-10 17:48:45.949265406 +0100
@@ -2708,3 +2708,8 @@
     b'experimental.inmemory',
     default=False,
 )
+coreconfigitem(
+    b'rebase',
+    b'norebasesource',
+    default=False,
+)
