Log

Author Commit Date CI Message
Christian Weisgerber 31e61ec1 2021-09-28T19:21:33 match the unsigned char type used by the zlib interface ok stsp
Stefan Sperling 0ff8d236 2021-09-28T06:59:08 show commit progress output when 'got merge -c' is used Otherwise no progress output is shown at all with this command. Commit progress output will also display any additional changes which resulted from conflict resolution. ok millert@
Christian Weisgerber 321a74a5 2021-09-27T12:17:19 garbage-collect unused "dist" target from subdirectory Makefiles ok stsp
Stefan Sperling 088449d3 2021-09-26T17:51:38 implement 'got merge -n' which interrupts before creating a merge commit
Stefan Sperling 4e91ef15 2021-09-26T17:51:35 make it possible to merge vendor branches with 'got merge'
Stefan Sperling 5c02d2a5 2021-09-26T17:40:10 for portability, handle errno variations upon open(2) failure with O_NOFOLLOW Problem pointed out by naddy for FreeBSD -portable. Discussed with millert, thomas adam, and naddy.
Stefan Sperling 5267b9e4 2021-09-26T11:41:40 allow bad symlinks to survive a merge Commands which perform merges will now install bad symlinks as symlinks in the work tree, instead of creating them as regular files. This means bad symlinks committed with 'got commit -S' (or Git) will be preserved. The decision to introduce a bad symlink is done at commit-time and merges should not forcefully reverse this decision. The cherrypick and backout commands require a manual commit step, and a merge result with bad symlinks will require use of 'got commit -S'. Additional testing by thomas adam
Christian Weisgerber 963ac08a 2021-09-25T20:21:10 match printf specifiers and (cast) types for portability ok stsp
Stefan Sperling 474b4982 2021-09-25T10:26:25 whitespace fix from Omar Polo
Stefan Sperling 030daac8 2021-09-25T10:26:13 fix some integers that had a slightly wrong type; patch by Omar Polo
Stefan Sperling 50127d69 2021-09-25T10:24:15 add 'static' qualifier to local functions in got-read-pack; patch by Omar Polo
Stefan Sperling fda3525e 2021-09-25T10:23:12 mark some function parameters as 'const', as they should be; patch by Omar Polo
Stefan Sperling f6764181 2021-09-24T21:52:59 fix 'got update' of an added + obstructed file When 'got update' tried to add a new file to the work tree and this file was obstructed by, say, a directory on disk, the update failed: $ got update ? new got: new: Is a directory $ And the work tree was not updated. With this commit this situation is properly detected as an obstruction and the update succeeds: $ got update ~ new Updated to refs/heads/master: c1f85b4938dc4c668a88f13df2b98a520fc077cc File paths obstructed by a non-regular file: 1 $ Extend a corresponding test case to cover this issue. ok tracey
Stefan Sperling f365d762 2021-09-24T20:50:54 stop using the term 'obstructed' ambiguously in the got.1 man page Specifically, obstructed files are versioned files which should be on disk but have been replaced on disk by a non-regular file (e.g. by a directory). The man page used the phrase "deletion was obstructed" which is unrelated to the above concept and can be expressed as "deletion was prevented" instead.
Stefan Sperling 1acd48bc 2021-09-24T20:47:39 stop caring about obstructed versioned files in 'got merge' Tyring to write a test to cover this case I found that obstructed files are (correctly) detected as local modifications in the work tree. Thus they trigger the pre-condition check for local modications and 'got merge' will not even start to do any work in the presence of obstructed files.
Stefan Sperling 793fcac3 2021-09-24T20:14:09 plug memory leak in got_worktree_merge_in_progress(); spotted by tracey
Stefan Sperling a6a8f8bb 2021-09-24T20:05:26 add a test for 'got merge' which covers a no-op merge situation
Stefan Sperling f259c4c1 2021-09-24T19:55:02 add a 'got merge' command for creating merge commits Additional testing by Thomas Adam. ok tracey
Stefan Sperling 9f98ca05 2021-09-24T19:47:15 show parent commit IDs of merge commits in the tog diff view ok tracey
Stefan Sperling 0e5df984 2021-09-23T18:03:54 update TODO note about HTTP; libtls will more likely be used from dial.c
Stefan Sperling 3af9de88 2021-09-22T13:32:37 fix 'got send' with tree objects which contain symlinks; reported by Omar
Stefan Sperling ad324bf5 2021-09-21T20:27:45 fix histedit_no_op test which was failing randomly A no-op replayed history ends up having exactly the same commit IDs if all commits are created at roughly the same moment in time. There are no content changes involved so if commit timestamps do not differ then commit hashes will be the same. In which case there is no fork in history for 'got histedit -l' to display, yet the test was always expecting a fork in history to be displayed. Update the test to take this issue into account. The test will now pass no matter which result is produced by the histedit operation. Problem found by Lucas who observed that this test was randomly failing. Patch also provided by Lucas.
Stefan Sperling 34c3415f 2021-09-21T20:17:54 update README blurb about 'ssh 127.0.0.1' requirement for regress tests
Stefan Sperling 3da8ef85 2021-09-21T11:05:06 tog: use sched_yield(2) instead of pthread_yield(3) for portability pthread_yield(3) is an optional POSIX 2001 extension while sched_yield(2) is part of POSIX 2008. On OpenBSD they are actually equivalent, albeit not documented as such. Using sched_yield(2) helps the -portable version. Patch by Quentin Rameau
Stefan Sperling 6062e8ea 2021-09-21T10:59:29 tog: document why _XOPEN_SOURCE_EXTENDED is set and don't undefine it
Stefan Sperling ac372b60 2021-09-15T17:11:46 'got status' does not have a -q option; remove it from got.1 synopsis
Stefan Sperling df7dea6e 2021-09-15T17:08:37 add -S option to 'got status' synopsis in got.1 man page
Stefan Sperling 7dd7d39b 2021-09-15T09:59:27 bump version number
Stefan Sperling 4a87b370 2021-09-15T09:55:18 CHANGES for 0.60
Christian Weisgerber 67d7451c 2021-09-15T08:29:53 shell code fixes Escape sequences are not handled by every echo(1), e.g. not on FreeBSD. '?' is a glob character and must be quoted. '!' is not a shell meta character. ok tracey stsp
Stefan Sperling f0fd0aaf 2021-09-14T19:21:59 make 'got send' regression tests run 'git fsck' on all involved repositories
Stefan Sperling c2105d00 2021-09-14T19:02:10 fix another instance of 'got send' sending branches the server already has
Stefan Sperling 13364f2d 2021-09-14T17:39:21 bump version number
Stefan Sperling 47975383 2021-09-14T17:27:43 CHANGES for 0.59
Stefan Sperling e3a46353 2021-09-14T16:37:50 verify that 'got status -s' and 'got status -S' cannot be used together
Stefan Sperling 4f3c844b 2021-09-14T16:12:52 make 'got update' display the worktree's branch name upon success ok tracey
Tracey Emery 67c65ed7 2021-09-14T15:47:30 add tests for checkout -q, update -q, and status -S. ok stsp
Stefan Sperling 788d4a19 2021-09-14T14:18:59 validate status codes given to 'got status -S'
Stefan Sperling b043307b 2021-09-14T14:15:49 make got status -s and -S options conflict
Stefan Sperling 08e5873e 2021-09-14T14:05:27 make 'got checkout' display the checked out reference and commit ID ok tracey
Tracey Emery 00357e4d 2021-09-14T13:49:46 add suppress status-code selection to got status. this allows for a quick way to clean output without the use of ignore files. ok stsp
Stefan Sperling 26960ff7 2021-09-14T09:52:49 make 'got send' properly send commits which are referenced only by tags Problem reported by Omar Polo.
Tracey Emery 4ad4a1ec 2021-09-13T16:23:12 add -q quiet mode to checkout and update. supressing output keeps the terminal responsive on large repos. ok jrick stsp
Stefan Sperling 824d5f77 2021-09-12T16:33:13 fix copy-pasto: got.conf protocol option takes a 'scheme' argument, not a 'path'
Stefan Sperling d33b6dd1 2021-09-11T13:50:57 bump version number
Stefan Sperling fec556bc 2021-09-11T13:44:55 CHANGES for 0.58
Stefan Sperling 0968089c 2021-09-11T13:44:36 sync dist file list
Stefan Sperling 1b796c3f 2021-09-11T08:06:47 fix a null-pointer deref in 'got fetch -d'; reported by Omar Polo
Stefan Sperling 678d8c1f 2021-09-10T20:55:39 fix name of temporary directory used by test_fetch_delete_remote_refs
Stefan Sperling 9b21d88f 2021-09-06T13:27:08 remove obsolete sentence from got_dial_parse_uri() docs
Christian Weisgerber 8a8621c2 2021-09-06T12:53:51 add missing <sys/types.h> include
Stefan Sperling 13b2084e 2021-09-06T11:24:44 make 'gotadmin info' display separate send/fetch URLs if they differ
Stefan Sperling 76b9ee43 2021-09-06T10:55:54 mention where the 'proto' parameter of got_dial_apply_unveil() comes from
Stefan Sperling cbf435dd 2021-09-06T10:53:46 fix documentation of got_dial_apply_unveil()
Stefan Sperling a5a30f30 2021-09-06T10:52:02 document functions declared in the public got_dial.h header file
Stefan Sperling baf82978 2021-09-06T10:51:30 remove declaration of got_fetch_parse_uri()
Stefan Sperling 2e601464 2021-09-06T10:49:29 fix regress/fetch build; broken by my renaming of got_fetch_parse_uri()
Christian Weisgerber c10270f6 2021-09-06T08:45:22 assert against accidentally overflowing argv[] in got_dial_ssh() ok stsp
Stefan Sperling 5e5da8c4 2021-09-05T20:51:29 rename got_fetch_parse_uri() to got_dial_parse_uri() This function is now being used by both 'got fetch' and 'got send' so its former name was misleading.
Stefan Sperling 77d7d3bb 2021-09-05T20:39:50 de-duplicate a constant used by both 'got fetch' and 'got send' Both GOT_FETCH_PKTMAX and GOT_SEND_PKTMAX had the same value. Declare this value as GOT_PKT_MAX in got_lib_pkt.h instead.
Stefan Sperling d65a88a2 2021-09-05T20:19:14 move duplicated dial_ssh() and dial_git() functions into a common file These functions are used by 'got send' and 'got fetch' in order to open network connections to a server. Move them into new file lib/dial.c and declare relevant functions in got_dial.h and lib/got_lib_dial.h. No functional change.
Christian Weisgerber abc59930 2021-09-05T19:41:03 indentation fixes
Stefan Sperling e33e440b 2021-09-05T14:34:59 whitespace fix
Stefan Sperling bd3d9e54 2021-09-05T14:21:02 move more code used by got-send-pack and got-fetch-pack to a common file Move functions and data structures which implement Git protocol features required for fetching and sending pack files to new files lib/gitproto.c and lib/got_lib_gitproto.h. This code was duplicated in got-fetch-pack and got-send-pack. No functional change.
Stefan Sperling f024663d 2021-09-05T13:50:39 move pkt code used by got-fetch-pack and got-send-pack to a common file The Git protocol uses a simple packet framing format. The got-fetch-pack and got-send-pack programs contained identical copies of functions to support this format. Move related functions to new file lib/pkt.c and link both programs against this common implementation. No functional change.
Christian Weisgerber f3bc9f1d 2021-09-05T13:10:13 tog: when jumping to the bottom of the log view, go from the tail backwards ok jasper
Christian Weisgerber 978a28a1 2021-09-04T16:22:38 make "got branch -d" print reference name and value Also silence output of "got branch -d" in a regression test, from stsp. ok stsp
Christian Weisgerber ea66598a 2021-09-03T21:41:22 tog: jump directly to first log item instead of traversing the list ok tracey
Christian Weisgerber e4526bf5 2021-09-03T21:40:14 tog: add support for navigating to first/last line of tree and ref views ok stsp
Stefan Sperling 376d7c62 2021-09-03T11:11:39 bump version number
Stefan Sperling 49213cad 2021-09-03T10:51:36 changes for 0.57
Stefan Sperling eca70f98 2021-09-03T09:51:31 fix 'got send' adding too many objects to the pack file in some cases Load server-side tags before loading local commits. Otherwise objects which are reachable via server-side tags will not be filtered out.
Stefan Sperling 0baddd91 2021-09-03T09:11:36 add test which covers a cherrypick merge from a branch to itself
Stefan Sperling ed99f061 2021-09-03T09:02:06 add a test case which covers 'got cherrypick' in a mixed-commit work tree
Stefan Sperling 69de9dd4 2021-09-03T09:02:06 limit checks for merge conflicts to files affected by the merge Performance problems reported by naddy
Christian Weisgerber 6435d2a6 2021-09-02T21:43:35 sys/param.h is not needed
Stefan Sperling 5546d466 2021-09-02T19:39:14 plug a memory leak in check_merge_ok()
Stefan Sperling a16d97bd 2021-09-02T19:19:49 remove ancestry sanity checks from 'got cherrypick' and 'got backout' While these checks might catch usage mistakes the performance overhead of scanning the entire history of the current branch is not worth it. Measurements provided by naddy, cherrypicking 5 commits of OpenBSD's src repository in usr.bin/rsync: Before: 5m50.33s real 4m02.36s user 2m04.41s system After: 1m04.92s real 0m28.24s user 0m36.54s system Further performance improvements could be needed but this is a first step.
Stefan Sperling 243a13f5 2021-09-02T19:13:50 fix bogus error when 'got cherrypick' merges changes into a locally added file reported by + ok naddy
Christian Weisgerber 4deef56f 2021-09-02T17:40:11 tog: add support for navigating to first/last line of blame view ok tracey stsp
Stefan Sperling 6c13b005 2021-09-02T13:57:34 Update comment regarding the merged_paths list used by rebase and histedit with insight I obtained while trying to make this idea work, and failing...
Stefan Sperling dae2a678 2021-09-01T20:31:46 backout 7280143edc2d689b1f57d5a46d376e48cdae64a2; not needed after all
Stefan Sperling 0e33f8e0 2021-09-01T14:34:33 disable ignore lists during status walks used by rebase and histedit Fixes rebase of gotwebd branch which added a new directory which is also matched by .gitignore rules on the branch.
Stefan Sperling 4c662b1d 2021-09-01T13:44:53 fix test data directory name used by test_histedit_fold_add_delete
Stefan Sperling e1d27370 2021-09-01T11:58:40 Fix ksh completion example to complete the first arg only; from Clint Pachl
Stefan Sperling 7280143e 2021-09-01T11:56:31 refactor collect_commitables() to make it easier to call from elsewhere later
Stefan Sperling eac1df47 2021-09-01T11:06:42 make 'got send' heed the branch {} options in got.conf(5); they were ignored ok naddy
Christian Weisgerber 3a6b8760 2021-08-31T19:18:37 use the POSIX-compliant "date -u" command to return UTC time; ok stsp
Christian Weisgerber dc8256b6 2021-08-31T19:18:37 "got blame" now shows UTC dates, adapt regression test; ok stsp
Stefan Sperling c2d7bc3f 2021-08-31T19:11:16 remove superfluous strdup(3) from parse.y files; Patch by Martin Vahlensieck
Stefan Sperling 2cf9e3ff 2021-08-30T20:29:52 bump version number
Stefan Sperling ce0c9cde 2021-08-30T20:01:27 CHANGES for 0.56
Stefan Sperling 0d64986a 2021-08-30T19:53:57 sync dist file list
Stefan Sperling 1dd93b2a 2021-08-30T19:52:03 use more precise wording to describe why End/G commit loading can be slow
Stefan Sperling 9ebbe6e1 2021-08-30T19:48:14 Mention Backspace key in the section which introduces the End/G keys, too.
Stefan Sperling 528dedf3 2021-08-30T19:46:56 make tog block other keys except Backspace after End/G is pressed This should avoid unexpected behaviour resulting from unrelated key presses messing with the log view's state variables. Pointed out by tracey, and also discussed with jasper. ok tracey
Jasper Lievisse Adriaanse 26f0cb24 2021-08-30T21:38:25 sync tog.1 after fb280deb with respect to the Backspace key description ok stsp
Christian Weisgerber 00f6361c 2021-08-30T19:12:04 remove the 'ctrl+u' shortcut in favor of just 'g' in the diff view, too
Stefan Sperling 75149077 2021-08-30T19:07:58 make tog ignore Ctrl+L and B while loading all commits Otherwise tog gets into a funky non-recoverable state if these keys are pressed instead of Backspace while commits are loading. bug found by + ok tracey
Stefan Sperling 27890b18 2021-08-30T18:54:51 remove the 'ctrl+u' shortcut in favour of just 'g' as alias for 'Home' Our use of ctrl+u was not consistent with vi(1) after all. Discussed with naddy, tb, and jasper on gameoftrees@