Commits
- Commit:
9ae4c4eaf05d8dfead422805fa0f902e196b73d3
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
fix histedit -e bug where reverting all changes causes histedit -c cycles
ok op@
- Commit:
433eb77d4f00be3e4a69641f7a61b4e5c6935a15
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
reintroduce the 'got init' command as an alternative to 'gotadmin init'
New users trying out Got for the first time have reported trouble with
finding a way to create a new repository, based on their assumption that
Got works like Git which provides a 'git init' command.
It doesn't cost us much effort to keep this command available in both
programs to make discovery a bit easier for new users coming from Git.
- Commit:
f57c91b34d24c53c184e2840aa0f616a96d4f764
- From:
- Omar Polo <op@omarpolo.com>
- Date:
plug a leak in a few cmds: forgot to free(cwd) at the end
spotted while investigating for another leak spotted by Kyle Ackerman.
ok stsp@ and jamsek
- Commit:
75bbb53178bc07949826c81f52ea9f5f042b43e4
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
show hint about update -b if the user attempts to rebase a branch onto itself
Specifically, when 'gut send' suggests 'fetch and rebase required', new users
might try to use 'got fetch' directly followed by 'got rebase' without first
updating the work tree to newly fetched commits. Got would then say "main is
already based on main" without any hint for a way out. Hopefully, pointing
users at the update -b command will make them search the manual for details.
- Commit:
5a810f318bdf6918a86fe0ce770d2eda026e6932
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
add default case to the switch statement in choose_patch()
Just in case the code futher up gets tweaked again such that the
validity check using strchr() will be skipped in some edge case.
Lucas agrees
- Commit:
c37c2f0a725cab61f43b8fa90096814ca9f24e33
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
make got stage -p behave the same way in interactive and -F modes for 'q'
Lucas agrees
- Commit:
e6370d593b348b23199788e4b0d5a23f14dde15e
- From:
- Lucas Gabriel Vuotto <lucas@lgv5.net>
- Via:
- Stefan Sperling <stsp@stsp.name>
- Date:
got: refactor choose_patch
Unify the handling of a response file and interactive use, handle EOF,
fix a memleak and make it easier to extend in the future. In particular,
interactive mode now doesn't loop forever on EOF.
Patch by Lucas Gabriel Vuotto.
Joint work with op.
- Commit:
ebd4d9a0266bb7a7145bcd6138bf64a5b0c1d004
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
backout got stage -R option addition
The stage command is usually used in a recursive manner, like 'got commit'.
Forcing users to specify -R all the time is deemed too inconvenient in
practice.
discussed on IRC with Lorenz (xha), Omar, and Lucas
- Commit:
283939fb8245f1600227fa1cde3c5623666fac8d
- From:
- Lucas Gabriel Vuotto <lucas@sexy.is>
- Via:
- Omar Polo <op@omarpolo.com>
- Date:
replace date, strftime %G-%m-%d with %F
Use the more predictable %F, aka %Y-%m-%d, instead of %G-%m-%d. %G
follows the definition of ISO-8601 week-based year, which is weird.
In particular, 2024 is one of such years with weird behaviour:
$ date -jf %Y-%m-%d +"%F %G-%m-%d" 2024-12-30
2024-12-30 2025-12-30
Diff from Lucas Gabriel Vuotto (thanks!); stsp agrees
- Commit:
3bafd8d444040e4f41be33562f63e5d2eb201447
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
rename a function to avoid gramatical ambiguity
- Commit:
bb068081f1967fa4f4f5c5e6db0d1065244f6539
- From:
- "Lorenz (xha)" <me@xha.li>
- Via:
- Stefan Sperling <stsp@stsp.name>
- Date:
require -R option for staging or unstaging directory contents
-R is needed on almost all other commands so this makes things consistent.
Patch by Lorenz (xha)
- Commit:
ced242c2ebcf8284b1cb695dc144461cace5313c
- From:
- Omar Polo <op@omarpolo.com>
- Via:
- Tobias Heider <me@tobhe.de>
- Date:
Add initial read-only http fetch support using a got-http helper.
Currently we only support the smart protocol with a limited feature set.
ok stsp@ tobhe@
- Commit:
72cc612fc3a0ca437b8ae0c55ff815e9a1a9e766
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
get rid of unnecessary "dns inet" pledge promises while fetching via git://
- Commit:
f4ab0e5770b96257cb1a43cfe292daa54f2b402e
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
make 'got status' display interrupted rebase, histedit, and merge operations
When an operation is interrupted add a trailing message to status output
which displays the operation and branches involved.
This information will be useful when diagnosing problem reports and it
helps new users with contextualizing multi-operation work tree state.
ok op@
- Commit:
8af456a9cc91eb4cba92e455baf06e679fe9ced6
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
forgot to unveil the log message file passed to got commit -F
found by op's regress builder
- Commit:
efcfe9187f7bcd4faecb4eabda86f3a921c62387
- From:
- Omar Polo <op@omarpolo.com>
- Date:
fold some long lines
- Commit:
909ef56bac18cdc0d889412542697be574acfe6b
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
call unveil earlier in 'got tag'
We now know that unveil(2) will never traverse exec.
No need to wait with unveil until the editor has been run.
ok op@
- Commit:
b56c985f97e99640c7e2f2f48dccabbc05526069
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
call unveil earlier in 'got histedit'
We now know that unveil(2) will never traverse exec.
No need to wait with unveil until the editor has been run.
ok op@
- Commit:
aaa8879b1ecf56fbe7d69e69a6e951db4d8cb806
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
call unveil earlier in 'got commit'
We now know that unveil(2) will never traverse exec.
No need to wait with unveil until the editor has been run.
ok op@
- Commit:
2f40f7d278bccb8402479f25d13145bdc199bfb7
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
call unveil earlier in 'got import'
We now know that unveil(2) will never traverse exec.
No need to wait with unveil until the editor has been run.
ok op@
- Commit:
98297eed5b9082b66f6397a0921c8d90df72cca1
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
rename got_commit_graph_iter_start() to got_commit_graph_bfsort()
This function begins a breadth-first traversal. The new name makes
it easier to distinguish from got_commit_graph_toposort().
- Commit:
e12cc036c3e7a71d71bb6a83a9a97bd53f5ba497
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
make 'got rebase' find a merge base with topological sorting if needed
Fixes a problematic case of spurious conflicts encountered by
naddy@ on landry's firefox package git repository.
The current implementation of toposort is expensive, so this might
make rebase appear to run slowly on large repositories. However,
this is better than letting users deal with spurious conflicts.
ok op@
- Commit:
83e5e9a11730a93d948aabbafdb2592713eb6f28
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
add log -t option which enables topological sorting of commits
Because the current implementation of toposort is expensive, add a
flag which enables it. I would rather not have this option and just
use toposort by default, however more work is required to achieve
acceptable performance.
ok op@
- Commit:
9c177e8d04414b7be4a02d64ed06dcc402a7b0a8
- From:
- Omar Polo <op@omarpolo.com>
- Date:
use a define for vi(1) path
This is intended to aid -portable, since other systems may have vi
installed in a different place, or maybe prefer to ship with a
different default editor.
ok stsp@
- Commit:
d0bb0ed648b2dd60e628937450cbaf9200beb9a6
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
plug got checkout and update worktree leaks spotted by op@