Fossil SCM

Add (stash rename) subcommand to change the label associated with a stash entry.

stephan 2025-08-17 12:50 trunk
Commit 1aaa6fc58d027cf5f3b0a91b7baab9c15099716831e9bf69059045b3eb931137
1 file changed +11 -1
+11 -1
--- src/stash.c
+++ src/stash.c
@@ -562,10 +562,14 @@
562562
** > fossil stash gdiff ?STASHID? ?DIFF-OPTIONS?
563563
**
564564
** Show diffs of the current working directory and what that
565565
** directory would be if STASHID were applied. With gdiff,
566566
** gdiff-command is used instead of internal diff logic.
567
+**
568
+** > fossil stash rename STASHID NEW-NAME
569
+**
570
+** Change the description of the given STASHID entry to NEW-NAME.
567571
*/
568572
void stash_cmd(void){
569573
const char *zCmd;
570574
int nCmd;
571575
int stashid = 0;
@@ -771,11 +775,17 @@
771775
}
772776
diff_options(&DCfg, zCmd[0]=='g', 0);
773777
stashid = stash_get_id(g.argc==4 ? g.argv[3] : 0);
774778
stash_diff(stashid, fBaseline, &DCfg);
775779
}else
776
- if( strncmp(zCmd, "help", nCmd)==0 ){
780
+ if( strncmp(zCmd, "rename", nCmd)==0 ){
781
+ if( g.argc!=5 ) usage("rename STASHID NAME");
782
+ stashid = stash_get_id(g.argv[3]);
783
+ db_multi_exec("UPDATE STASH SET COMMENT=%Q WHERE stashid=%d",
784
+ g.argv[4], stashid);
785
+ }
786
+ else if( strncmp(zCmd, "help", nCmd)==0 ){
777787
g.argv[1] = "help";
778788
g.argv[2] = "stash";
779789
g.argc = 3;
780790
help_cmd();
781791
}else
782792
--- src/stash.c
+++ src/stash.c
@@ -562,10 +562,14 @@
562 ** > fossil stash gdiff ?STASHID? ?DIFF-OPTIONS?
563 **
564 ** Show diffs of the current working directory and what that
565 ** directory would be if STASHID were applied. With gdiff,
566 ** gdiff-command is used instead of internal diff logic.
 
 
 
 
567 */
568 void stash_cmd(void){
569 const char *zCmd;
570 int nCmd;
571 int stashid = 0;
@@ -771,11 +775,17 @@
771 }
772 diff_options(&DCfg, zCmd[0]=='g', 0);
773 stashid = stash_get_id(g.argc==4 ? g.argv[3] : 0);
774 stash_diff(stashid, fBaseline, &DCfg);
775 }else
776 if( strncmp(zCmd, "help", nCmd)==0 ){
 
 
 
 
 
 
777 g.argv[1] = "help";
778 g.argv[2] = "stash";
779 g.argc = 3;
780 help_cmd();
781 }else
782
--- src/stash.c
+++ src/stash.c
@@ -562,10 +562,14 @@
562 ** > fossil stash gdiff ?STASHID? ?DIFF-OPTIONS?
563 **
564 ** Show diffs of the current working directory and what that
565 ** directory would be if STASHID were applied. With gdiff,
566 ** gdiff-command is used instead of internal diff logic.
567 **
568 ** > fossil stash rename STASHID NEW-NAME
569 **
570 ** Change the description of the given STASHID entry to NEW-NAME.
571 */
572 void stash_cmd(void){
573 const char *zCmd;
574 int nCmd;
575 int stashid = 0;
@@ -771,11 +775,17 @@
775 }
776 diff_options(&DCfg, zCmd[0]=='g', 0);
777 stashid = stash_get_id(g.argc==4 ? g.argv[3] : 0);
778 stash_diff(stashid, fBaseline, &DCfg);
779 }else
780 if( strncmp(zCmd, "rename", nCmd)==0 ){
781 if( g.argc!=5 ) usage("rename STASHID NAME");
782 stashid = stash_get_id(g.argv[3]);
783 db_multi_exec("UPDATE STASH SET COMMENT=%Q WHERE stashid=%d",
784 g.argv[4], stashid);
785 }
786 else if( strncmp(zCmd, "help", nCmd)==0 ){
787 g.argv[1] = "help";
788 g.argv[2] = "stash";
789 g.argc = 3;
790 help_cmd();
791 }else
792

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button