Zach S
03/13/2026, 8:56 PM--insert as:
-i, --insertInsert this branch between the current branch and its child. If there are multiple children, prompts you to select which should be moved onto the new branch.
Maybe I'm dumb, but if you have main > B and you want main > A > B, this implies you should checkout main and do gt create --insert A and be prompted that B is the correct child.
But I just did this and graphite inserted A in between EVERY branch that is a child of main.
I hope I don't have to explain how disruptive/annoying this is. Truly unbelievable.Pylon
03/13/2026, 8:57 PMgt feedback --with-debug-context <any message>Zach S
03/13/2026, 8:59 PMZach S
03/13/2026, 9:00 PMmain , and now there is a new branch that is between ALL of them and main.Pylon
03/13/2026, 9:05 PMgt --version are you using? This would be unexpected behavior. In my first try at repro'ing it worked as expected thoughZach S
03/13/2026, 9:05 PMgt --version
1.6.8Pylon
03/13/2026, 9:09 PMZach S
03/13/2026, 9:09 PMPylon
03/13/2026, 9:11 PMcreate in the inteirmZach S
03/13/2026, 9:14 PMJacob Gold
03/13/2026, 9:38 PMJacob Gold
03/13/2026, 9:41 PMJacob Gold
03/13/2026, 9:42 PMJoan La Rosa
03/16/2026, 7:01 PMZach S
03/16/2026, 7:01 PM1.7.20 and again got unexpected behavior.
I did:
git checkout main
gt create test-A
# now have main > test-A
git checkout main
gt create --insert test-inserted
and again I did NOT get a prompt but it seems like graphite "remembered" that my most recently-created child branch was test-A and I ended up with
`main > test-inserted > test-A`:
$ gt ls -s
◯ test-A
◉ test-inserted
◯ main
AND it gave this error message:
ERROR: Command failed with error exit code 128:
git update-ref refs/branch-metadata/main 8aa97b94614df7759ae1c20a108c535d182b4084
fatal: update_ref failed for ref 'refs/branch-metadata/main': cannot lock ref 'refs/branch-metadata/main': Unable to create '/Users/zsiegel/code/current-ai/.git/refs/branch-metadata/main.lock': File exists.
Another git process seems to be running in this repository, e.g.
an editor opened by 'git commit'. Please make sure all processes
are terminated then try again. If it still fails, a git process
may have crashed in this repository earlier:
remove the file manually to continue.Zach S
03/16/2026, 7:03 PMZach S
03/16/2026, 7:07 PMgt create --insert should obviously, intuitively, have the following definition:
insert a branch between the current branch and its PARENT. By default, the branch will be identical to the PARENT branch; runBut actually I think you should removeto insert a branch that is identical to THIS branchgt create --insert-from-this
gt create --insert and just add a new command gt insert - the difference between this and gt create is comparable to the difference between gt fold and gt create , which are indeed separate commands.Zach S
03/16/2026, 7:07 PMgt create --insert .Jacob Gold
03/16/2026, 8:54 PMgt create --insert opening interactive prompt when on main (actually does this in any case when there are multiple children of the current branch).
have you ever seen this prompt? wondering if there is something going on with the way the prompting library we use interacts with your systemJacob Gold
03/16/2026, 8:57 PMgt create - the only difference is that you are moving (some of the) existing children of the current branch on top of the new branch.Jacob Gold
03/16/2026, 8:59 PMinsert a branch between the current branch and its PARENTthis would run into conflicts quite often if you made changes to the same code that was added in the current branch. i think we could support that as well with a separate command/flag combination though, it's a good idea
Zach S
03/23/2026, 4:26 PMJacob Gold
03/23/2026, 4:53 PMgt feedback after to send us a debug context. Also, what OS/shell is this on?Zach S
03/23/2026, 4:54 PMgt insert (since that caused some damage last time I ran it)
Is there another command that opens up that prompt UI?Jacob Gold
03/23/2026, 5:10 PMgt checkout?Jacob Gold
03/23/2026, 5:10 PMJacob Gold
03/23/2026, 5:11 PM