I hit a case when refreshing a buried patch that needed a merge conflict sorted out. I'm unable to recover out of the state. jonsmirl@terra:~/fs$ stg status A drivers/input/ir/ir-configfs.c A drivers/input/ir/ir-core.c A drivers/input/ir/ir.h C drivers/input/ir/Makefile D drivers/input/ir-configfs.c D drivers/input/ir-core.c D drivers/input/ir.h M drivers/input/Makefile M drivers/input/input.c jonsmirl@terra:~/fs$ gedit drivers/input/Makefile drivers/input/input.c jonsmirl@terra:~/fs$ gedit drivers/input/ir/Makefile jonsmirl@terra:~/fs$ stg resolve drivers/input/ir/Makefile jonsmirl@terra:~/fs$ stg help usage: stg <command> [options] Generic commands: help print the detailed command usage version display version information copyright display copyright information Repository commands: clone Make a local clone of a remote repository id Print the git hash value of a StGit reference Stack (branch) commands: branch Branch operations: switch, list, create, rename, delete, ... clean Delete the empty patches in the series coalesce Coalesce two or more patches into one commit Permanently store the applied patches into the stack base float Push patches to the top, even if applied goto Push or pop patches to the given one hide Hide a patch in the series init Initialise the current branch for use with StGIT log Display the patch changelog patches Show the applied patches modifying a file pop Pop one or more patches from the stack pull Pull changes from a remote repository push Push one or more patches onto the stack rebase Move the stack base to another point in history redo Undo the last undo operation repair Fix StGit metadata if branch was modified with git commands reset Reset the patch stack to an earlier state series Print the patch series sink Send patches deeper down the stack top Print the name of the top patch uncommit Turn regular git commits into StGit patches undo Undo the last operation unhide Unhide a hidden patch Patch commands: delete Delete patches edit edit a patch description or diff export Export patches to a directory files Show the files modified by a patch (or the current patch) fold Integrate a GNU diff patch into the current patch import Import a GNU diff file as a new patch mail Send a patch or series of patches by e-mail new Create a new, empty patch pick Import a patch from a different branch or a commit object refresh Generate a new commit for the current patch rename Rename a patch show Show the commit corresponding to a patch sync Synchronise patches with a branch or a series Index/worktree commands: diff Show the tree diff resolved Mark a file conflict as solved status Show the tree status jonsmirl@terra:~/fs$ stg help coalesce jonsmirl@terra:~/fs$ stg series + Makefile + anton_1 + anton_3 + add-of_find_i2c_device_by_node + jds_platform + max9485 + jds-soc-machine + jds-psc-c + soc-u32-cleanup + jds-audio + g_spi_4 + m_1 + spi-mmc + mpc5200-rtc + lirc + jds-lirc > refresh-temp - jds-lirc-gpt - jds-lirc-device-tree - jds-lirc-mce2 jonsmirl@terra:~/fs$ ls arch Documentation init MAINTAINERS net samples usr vmlinux.strip.gz block drivers ipc Makefile patches-master scripts virt COPYING firmware Kbuild mm patches-save security vmlinux CREDITS fs kernel modules.order README sound vmlinux.bin.gz crypto include lib Module.symvers REPORTING-BUGS System.map vmlinux.o jonsmirl@terra:~/fs$ mv patches-master patches-foo jonsmirl@terra:~/fs$ stg export Checking for changes in the working directory ... done Warning: Local changes in the tree; you might want to commit them first jonsmirl@terra:~/fs$ stg status A drivers/input/ir/ir-configfs.c A drivers/input/ir/ir-core.c A drivers/input/ir/ir.h D drivers/input/ir-configfs.c D drivers/input/ir-core.c D drivers/input/ir.h M drivers/input/Makefile M drivers/input/input.c M drivers/input/ir/Makefile jonsmirl@terra:~/fs$ ls patches-master add-of_find_i2c_device_by_node g_spi_4 jds_platform lirc max9485 series anton_1 jds-audio jds-psc-c m_1 mpc5200-rtc soc-u32-cleanup anton_3 jds-lirc jds-soc-machine Makefile refresh-temp spi-mmc jonsmirl@terra:~/fs$ vi patches-master/refresh-temp jonsmirl@terra:~/fs$ stg series + Makefile + anton_1 + anton_3 + add-of_find_i2c_device_by_node + jds_platform + max9485 + jds-soc-machine + jds-psc-c + soc-u32-cleanup + jds-audio + g_spi_4 + m_1 + spi-mmc + mpc5200-rtc + lirc + jds-lirc > refresh-temp - jds-lirc-gpt - jds-lirc-device-tree - jds-lirc-mce2 jonsmirl@terra:~/fs$ stg refresh -p jds-lirc Error: HEAD and top are not the same. This can happen if you modify a branch with git. "stg repair --help" explains more about what to do next. stg refresh: Command aborted (all changes rolled back) jonsmirl@terra:~/fs$ stg refresh Error: HEAD and top are not the same. This can happen if you modify a branch with git. "stg repair --help" explains more about what to do next. stg refresh: Command aborted (all changes rolled back) jonsmirl@terra:~/fs$ stg new foo Invoking the editor: "vi .stgit-new.txt" ... done Error: HEAD and top are not the same. This can happen if you modify a branch with git. "stg repair --help" explains more about what to do next. stg new: Command aborted (all changes rolled back) jonsmirl@terra:~/fs$ stg new foo Invoking the editor: "vi .stgit-new.txt" ... done Error: HEAD and top are not the same. This can happen if you modify a branch with git. "stg repair --help" explains more about what to do next. stg new: Command aborted (all changes rolled back) jonsmirl@terra:~/fs$ stg repair --help Usage: stg repair Fix StGit metadata if branch was modified with git commands Options: -h, --help show this help message and exit jonsmirl@terra:~/fs$ -- Jon Smirl jonsmirl@xxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html