Thread (287 messages) 287 messages, 11 authors, 2018-10-08

Re: [PATCH v3 04/12] sequencer: introduce new commands to reset the revision

From: Eric Sunshine <hidden>
Date: 2018-02-12 19:26:59

On Sat, Feb 10, 2018 at 7:10 PM, Johannes Schindelin
[off-list ref] wrote:
quoted hunk ↗ jump to hunk
[...]
This commit implements the commands to label, and to reset to, given
revisions. The syntax is:

        label <name>
        reset <name>
[...]
Signed-off-by: Johannes Schindelin <redacted>
---
diff --git a/sequencer.c b/sequencer.c
@@ -1922,6 +1951,151 @@ static int do_exec(const char *command_line)
+static int safe_append(const char *filename, const char *fmt, ...)
+{
+       [...]
+       if (write_in_full(fd, buf.buf, buf.len) < 0) {
+               error_errno(_("could not write to '%s'"), filename);
+               rollback_lock_file(&lock);
strbuf_release(&buf);
+               return -1;
+       }
+       if (commit_lock_file(&lock) < 0) {
+               rollback_lock_file(&lock);
strbuf_release(&buf);
+               return error(_("failed to finalize '%s'"), filename);
+       }
+
strbuf_release(&buf);
+       return 0;
+}
+
+static int do_reset(const char *name, int len, struct replay_opts *opts)
+{
+       [...]
+       unpack_tree_opts.reset = 1;
+
+       if (read_cache_unmerged())
rollback_lock_file(&lock);
strbuf_release(&ref_name);
+               return error_resolve_conflict(_(action_name(opts)));
+
+       if (!fill_tree_descriptor(&desc, &oid)) {
+               error(_("failed to find tree of %s"), oid_to_hex(&oid));
+               rollback_lock_file(&lock);
+               free((void *)desc.buffer);
+               strbuf_release(&ref_name);
+               return -1;
+       }
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help