Commits
- Commit:
ea4ee74a619549cdfbbf7f824599834f31b72838
- From:
- James Cook <falsifian@falsifian.org>
- Via:
- Omar Polo <op@omarpolo.com>
- Date:
regress/cmdline: fix handling of unexpected success
Diff from James Cook, thanks!
- Commit:
2b70695630ead3274d31727f6b477f3544dc9c9a
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
fix 'got commit' using a bad parent commit ID when worktree is out-of-date
Problem reported by James Cook with reproduction scripts
Regression test case by jamsek, as a simplified version of James' scripts
fix tested + ok jamsek
- Commit:
885e96dfba200f362ddd1d9795740251bcb6e39b
- From:
- Christian Weisgerber <naddy@mips.inka.de>
- Date:
regress: replace "sed -i" with ed(1) for portable in-place editing
"sed -i" is fundamentally unportable. GNU and OpenBSD sed(1) treat
the extension for the backup file as an optional argument and use
"sed -i" for no backup file. FreeBSD sed(1) treats the extension
as an obligatory argument and uses "sed -i ''" for no backup file.
There is no single syntax that works for both.
ok stsp op
- Commit:
57993930913522d8e81509ef26d8e0a26d571815
- From:
- Omar Polo <op@omarpolo.com>
- Date:
regress/commit.sh: tweak editor.sh for test_commit_prepared_logmsg
no need for sed (which doesn't change anything anyway), a no-op editor
script is enough; the test ensures that the prepared log message is used.
ok naddy@ stsp@
- Commit:
1a4be2506adddbb055438ec1bf79188555514c1e
- From:
- Thomas Adam <thomas@xteddy.org>
- Date:
regress: make cmdline tests sh compatible
Ensure shell scripts can run under more POSIX-restricted shells.
OK op@
- Commit:
f55db25a40103e9990a713a4f61d37686d786194
- From:
- Christian Weisgerber <naddy@mips.inka.de>
- Date:
regress: replace unportable ln -h option with rm && ln
ok stsp
- Commit:
de51a12a5befe30cf15a089998d0136d52856dc2
- From:
- Omar Polo <op@omarpolo.com>
- Date:
gitconfig.c: look for comments after trimming the start of the line
This fixes the (harmless) errors raised by gitconfig.c on indented
comment lines and adds a test case for it. Reported by James Cook,
thanks!
ok stsp@
- Commit:
2b5b58792b27164b1bbcbfb25180ce2ea5986e3f
- From:
- Omar Polo <op@omarpolo.com>
- Date:
gitconfig.c: fix read/write out of bounds
conf_parse_line advances the `line' pointer without decrementing the
line size `sz'. This makes the parsing code mistakingly reading from
the next line (`line' is just a pointer in a bigger buffer that holds
the whole file) and may mangle it by writing NUL bytes in it.
Add also a new regress case to trigger this case.
Reported by falsifian on IRC, thanks!
ok stsp@
- Commit:
123836732402b1204e5be68f98a69084285c316d
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
add ci/he/mg/rb -C option to commit unresolved conflicts
As per stsp's suggestion and building on his initial diff, add the -C option
to enable creating commits with unresolved conflicts to the commit, histedit,
merge, and rebase commands to allow continuing the operation despite files in
conflict status. Also, only search for conflict markers in newly added lines
to enable working with files already under version control that may have
conflict markers embedded verbatim.
lots of tweaks, improvements, and initial diff + ok stsp@
- Commit:
a4515c6608c1b685bfa9187b2517b44773a11068
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
got: drop commit -A $GOT_AUTHOR restriction
As discussed with op and stsp on irc, this prevents the valid case of
changing a commit's author to yourself during a histedit operation, and
potentially blocks other valid use cases too.
ok stsp@ and op@
- Commit:
b584caa3e8756aeac18e4d5b3c63cdc8b17ad9ea
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
show worktree UUID in backout/cherrypick -l output
When run from the repository, display the UUID to help the user know which
logmsg refs belong to which work tree. Also, use "backout" or "cherrypick"
in the log message header to distinguish output from 'got log'.
Suggested by stsp on irc.
ok stsp@
- Commit:
def2bea2b9b5f351896e4af5c7ff6a59a1b537c9
- From:
- Mark Jamsek <mark@jamsek.dev>
- Date:
regress: commit coverage for the new logmsg ref feature
This tests we correctly:
- use multiple logmsg refs in one commit;
- use only relevant refs involving affected paths;
- use refs when some of the affected paths are reverted;
- neither use nor remove refs if all affected paths are omitted
from the commit;
- use refs when previously excluded paths are later committed.
- remove corresponding temp merged_log 'got-logmsg-*' files
hints and ok stsp@
- Commit:
21f077265038a0c30c857035d2ab286f293573b1
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
require space between commit author name and email, for Git compatibility
Allowing such author fields breaks 'got send' towards Github for affected
commits because git-index-pack --strict will error out on the server:
$ git index-pack --strict pack-de791fb6a3a1961e44ac5d98d72fd533bf9277c8.pack
error: object 5d6bde9eaaf27f41ae8fa7112bb45e489d3c16b9: missingSpaceBeforeEmail:
invalid author/committer line - missing space before email
fatal: fsck error in packed object
problem encountered by landry@
ok op@
- Commit:
f1aec6edf3cf139d631d740ffc7f9428c913685c
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
fix regression test failures with Git 3.30.5 / 2.38.1 or later installed
The fix for CVE-2022-39253 in Git made our regression tests fail since
creating submodules from local clones is no longer allowed by default.
Add an override to our invocations of "git submodule add", the same
which was added to Git's regression test suite as part of their fix.
This CVE doesn't otherwise affect us. We do not implement submodules.
Our use of them in regression tests exists only to ensure that Got does not
freak out when it sees one. Precisely because automated support for nested
repositories and/or working copies (as in Git Submodules, or Subversion
Externals, etc.) have been an endless source of security problems in
other systems.
sudden test failures pointed out by naddy@
- Commit:
4ba2e95571e317867b5ed45cb6c8580a33627500
- From:
- Stefan Hagen <sh+got@codevoid.de>
- Date:
got: don't search through ignored paths and files on commit
- Commit:
7370f8029cdaf59e59f78cfc866eeb7b82c76e74
- From:
- Omar Polo <op@omarpolo.com>
- Date:
use GOT_IGNORE_GITCONFIG in regress
fixes test_rebase_no_author_info when a valid ~/.gitconfig is found.
ok stsp@
- Commit:
62b21d332b3a92a7f99022d68bc8fd98a4682d33
- From:
- Omar Polo <op@omarpolo.com>
- Date:
got commit: add flag to specify the author
This adds a new flag, `got commit -A', that allows to specify the commit
author but retains the "committer" (which is obtained as usual via
GOT_AUTHOR, got.conf or git config.)
with lots of help from and ok stsp
- Commit:
cf208ddd0ee1b6c232ef38bc307e689bc2b4653b
- From:
- Omar Polo <op@omarpolo.com>
- Date:
fix email address parsing
we were both too strict and too lose. To avoid breaking got object
parser (and to some extent ours too) we need to ensure that there aren't
any line feeds, extra < or > and no trailing gibberish. The '@' is not
actually required in the email.
various tweaks and ok stsp
- Commit:
230e1f1bfa1d7bbd0dee0217e22bc2817e848ad0
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
regress: use bs=1M for dd, not bs=1m; fixes -portable test failure on ubuntu
GNU dd only accepts upper-case letters for the size units.
- Commit:
8469d82143a591d423c000c47c63bababe6f5716
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
always show commit or tree IDs in diff header, in order to help 'got patch'
The idea is that got patch can simply look for a line such as:
commit - abcde1234567...
to find the merge base commit ID to show in diff3 conflict markers.
got log -p now displays commit IDs in its diff header, instead ofl
tree or blob IDs.
ok op@
- Commit:
49c543a6fe888394ca86e6399c706a9965486134
- From:
- Christian Weisgerber <naddy@mips.inka.de>
- Date:
use test(1) -eq and -ne to compare integers, and reduce quoting
This brings the rest of the regression test scripts in line with
patch.sh.
- Commit:
1d918cf99eb38998939247bea7f749f199390dc3
- From:
- Omar Polo <op@omarpolo.com>
- Date:
improve error message due to malformed `author' in got.conf
tweak and ok stsp@
- Commit:
72840534edfc1ffa7aafa0ce0ab42568c8ec7145
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
compress delta data from delta_cache directly into pack file
- Commit:
4f3c844beaeb6a0b30565833e0481b8de9a5106e
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
make 'got update' display the worktree's branch name upon success
ok tracey
- Commit:
3a6b87604592c583079227ea995f50eb3ec74121
- From:
- Christian Weisgerber <naddy@mips.inka.de>
- Date:
use the POSIX-compliant "date -u" command to return UTC time; ok stsp