|
f2dd7807
|
2022-05-17T13:28:02
|
|
got patch: avoid open/sync/close the fileindex over and over again
Instead of flushing the fileindex after every patch in the patchfile
just reuse the same fileindex and sync it only at the end of the patch
operation. This speeds up 'got patch' on large repositories by quite a
lot.
|
|
78f5ac24
|
2022-03-19T15:06:37
|
|
move got_patch file status checking in worktree.c
check_file_status used got_worktree_status to check if the file was in
an allowed state, but it's wrong since the callback is not invoked on
unchanged files.
While here also fix a relate bug: unlink(newpath) is in the wrong spot
and ends up removing files even when it shouldn't, so move it early in
the got_worktree_schedule_* error handling.
Finally, update the appropriate test case. It was passing before
because got_worktree_schedule_add returned GOT_ERR_FILE_STATUS, not
because check_file_status failed.
ok stsp@
|
|
4e12cd97
|
2022-01-25T22:48:26
|
|
make 'got rm' behave like rm(1) for paths found missing on disk
ok millert@
|
|
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@
|
|
f259c4c1
|
2021-09-24T19:55:02
|
|
add a 'got merge' command for creating merge commits
Additional testing by Thomas Adam.
ok tracey
|
|
abc59930
|
2021-09-05T19:41:03
|
|
indentation fixes
|
|
f6343036
|
2021-06-22T20:00:44
|
|
new -I option for 'got status' to show files which match an ignore pattern
|
|
e600f124
|
2021-03-21T19:09:35
|
|
ensure that old commits remain referenced after rebase and histedit
Create automatic "backup" references which ensure that objects from
the pre-rebase or pre-histedit state remain in the repository.
A new -l option for 'got rebase' and 'got histedit' lists old commits.
This makes it easier to recover from botched rebase or histedit operations.
Removal of such objects currently requires got ref -d and git-gc.
This will be made more convenient in the future.
testing and ok jrick
|
|
50b0790e
|
2020-09-11T17:04:57
|
|
add per-worktree got.conf(5) file in the .got directory; ok millert
|
|
766841c2
|
2020-08-13T19:12:57
|
|
add -s option to 'got remove' which deletes files in a particular status
This makes it easy to deal with files that were deleted from disk by external
tooling which modified the work tree. Such files are left in missing (!)
status and can now be marked for deletion in bulk via 'got rm -s\! -R .'
For consistency, modified (M) files can now be removed with 'got rm -s M'
which implies 'got rm -f'.
Prompted by feedback from krw@
|
|
b2118c49
|
2020-07-28T20:17:19
|
|
Add a 'got info' command which displays work tree meta-data.
Remove the alias 'got in' for 'got init'.
The 'in' alias was too close to either 'init' or 'info'.
ok tracey, millert
|
|
35213c7c
|
2020-07-23T14:22:39
|
|
forbid bad symlinks; add -S option to 'got commit' and 'got stage' to allow them
|
|
5036ab18
|
2020-04-18T18:40:00
|
|
make 'got update' skip conflicted files
ok millert@
|
|
7f47418f
|
2019-12-20T15:54:59
|
|
make 'got checkout' and 'got update' work with read-only repositories
but warn users about the garbage collection problem
|
|
70e3e7f5
|
2019-12-13T20:05:57
|
|
add -k option to 'got remove' to keep files on disk
ok stsp
|
|
12463d8b
|
2019-12-13T11:52:18
|
|
address some of the file descriptor vs. path races in status callbacks
|
|
f2a9dc41
|
2019-12-13T00:29:28
|
|
add -R option to 'got remove' for recursive deletion
ok stsp
|
|
022fae89
|
2019-12-06T16:18:26
|
|
Introduce -I to cmd_add to disregard ignores when adding recursively. Expand add.sh tests. Update TODO.
|
|
4e68cba3
|
2019-11-23T10:11:54
|
|
add -R option to 'got add' for recursive addition (patch by Tracey Emery)
|
|
1ebedb77
|
2019-10-19T11:06:55
|
|
teach 'got commit' to tweak the executable bit of a file
|
|
2822a352
|
2019-10-15T11:38:27
|
|
add 'got integrate' command
|
|
2a06fe5f
|
2019-08-24T12:58:07
|
|
indicate non-existent paths in 'got status' and make 'got diff' error for them
|
|
e6209546
|
2019-08-22T11:12:24
|
|
untie cancel callback declaration from the work tree
|
|
33aa809d
|
2019-08-08T18:17:04
|
|
implement 'revert -p'
|
|
2e1f37b0
|
2019-08-08T12:04:29
|
|
implement 'got unstage -p'
|
|
a7c9878d
|
2019-08-08T08:40:38
|
|
make stage -p show the number of changes in a file
|
|
b353a198
|
2019-08-07T17:40:15
|
|
add 'q' response to 'got stage -p'
|
|
dc424a06
|
2019-08-07T17:26:35
|
|
initial 'got stage -p' implementation
|
|
ad493afc
|
2019-08-04T00:52:07
|
|
initial 'got unstage' implementation
|
|
537ac44b
|
2019-08-03T15:07:13
|
|
pass staged blob ID to status callback
|
|
88d0e355
|
2019-08-03T14:30:32
|
|
report staged status via status callback
|
|
1e71573e
|
2019-08-03T13:48:47
|
|
make stage worktree API look more like the one for 'add'
|
|
fdfa9bf2
|
2019-08-03T13:41:43
|
|
provide a way for API users to override staged file content
|
|
0cb83759
|
2019-08-03T13:31:03
|
|
implement got_worktree_stage_paths()
|
|
5c1e53bc
|
2019-07-28T11:34:22
|
|
add support for multiple path arguments to 'got commit'
|
|
c3022ba5
|
2019-07-27T22:15:05
|
|
rename "histedit list" to "histedit script" (on-disk filename changed)
|
|
f2ea84fa
|
2019-07-27T14:26:10
|
|
make 'got update' accept mulitple path arguments
|
|
72ea6654
|
2019-07-27T11:21:56
|
|
add support for multiple path arguments to 'got status'
|
|
3e3a69f1
|
2019-07-25T14:25:02
|
|
open fileindex just once to make rebase and histedit faster
|
|
0ebf8283
|
2019-07-23T17:39:43
|
|
initial 'got histedit' implementation
|
|
01757395
|
2019-07-12T19:40:57
|
|
speed up commits during rebase by caching a list of merged paths
|
|
1ee397ad
|
2019-07-12T19:06:56
|
|
allow error return from got_worktree_checkout_cb()
|
|
818c7501
|
2019-07-10T18:23:39
|
|
initial 'got rebase' implementation
|
|
a484d721
|
2019-06-10T12:10:37
|
|
don't report base-bump-only updates as 'already up to date'
|
|
e20a8b6f
|
2019-06-04T16:35:01
|
|
allow multiple file path arguments for 'got revert'
|
|
17ed4618
|
2019-06-02T21:24:17
|
|
allow removing multiple paths at once for 'got rm'
|
|
2b92fad7
|
2019-06-02T17:52:19
|
|
test and fix expected file status after 'got cherrypick'
|
|
234035bc
|
2019-06-01T13:35:47
|
|
add 'got cherrypick' command
|
|
8656d6c4
|
2019-05-20T16:31:38
|
|
make struct got_commitable opaque to library users
|
|
a3df2849
|
2019-05-20T16:02:16
|
|
fix bug reproduced by xfail test 'test_commit_added_subdirs'
|
|
024e9686
|
2019-05-14T13:22:16
|
|
add branch support to 'got update'
|
|
b416585c
|
2019-05-13T18:19:59
|
|
store file's base commit ID in got_commitable and use it for OOD check
|
|
016a88dd
|
2019-05-13T18:02:39
|
|
report base commit of fileindex entries to status callback
|
|
c4e12a88
|
2019-05-13T17:52:58
|
|
rename got_commitable's 'base_id' to 'base_blob_id'; more obvious
|
|
33ad4cbe
|
2019-05-12T19:53:17
|
|
implement spawning an editor to collect a commit message
bails on empty messages, trims leading and trailing newlines
this currently disables the unveil in the commit process because
it's not compatible with spawning the editor
also prevent commits when there are no changes
|
|
1dd54920
|
2019-05-11T18:50:57
|
|
open the file index just once when adding multiple files
|
|
36a38700
|
2019-05-10T14:53:03
|
|
stop caching head ref's value in struct got_worktree; may become stale
|
|
bc70eb79
|
2019-05-09T15:45:21
|
|
fix bug in concurrent commit check and add another commit test
|
|
afa376bf
|
2019-05-08T19:18:45
|
|
report commit item status
|
|
de18fc63
|
2019-05-08T18:37:37
|
|
write commit objects
|
|
c4296144
|
2019-05-07T10:17:36
|
|
WIP commit implementation
|
|
c4cdcb68
|
2019-04-03T16:17:53
|
|
add support for partial updates, which affect specific paths only
|
|
a129376b
|
2019-03-29T00:04:52
|
|
add initial implementation of 'got revert'
|
|
031a5338
|
2019-03-26T10:46:18
|
|
make got_worktree_schedule_add() report 'added' via status_cb
|
|
2ec1f75b
|
2019-03-26T10:35:33
|
|
add a basic implementation of 'got rm'
|
|
d00136be
|
2019-03-26T09:03:53
|
|
implement a basic 'got add' command
|
|
6c34b1aa
|
2019-03-18T17:25:10
|
|
whitespace formatting fixes in include/
|
|
6c7ab921
|
2019-03-18T16:48:18
|
|
introduce got_worktree_resolve_path()
|
|
3a6ce05a
|
2019-02-11T12:32:53
|
|
check for errors from close(2)
|
|
927df6b7
|
2019-02-10T18:42:29
|
|
allow restricting 'got diff' and 'got status' to a path in work tree
|
|
276262e8
|
2019-02-08T15:27:19
|
|
fix typo in status code name: GOT_STATUS_MODIFIY -> GOT_STATUS_MODIFY
|
|
6353ad76
|
2019-02-08T15:12:00
|
|
make 'got update' merge file edits
|
|
b72f483a
|
2019-02-06T00:04:59
|
|
make 'got diff' show local changes in work tree
|
|
c7f4312f
|
2019-02-05T17:46:58
|
|
make 'got status' work in subdirectories of a work tree
|
|
247140b2
|
2019-02-05T17:15:54
|
|
make got_worktree_open() crawl upwards
|
|
0dbc2271
|
2019-02-05T16:16:13
|
|
make 'got status' detect obstructed files
|
|
f8d1f275
|
2019-02-04T14:46:17
|
|
add a worktree status API
|
|
5d56da81
|
2019-01-13T17:15:53
|
|
happy new copyright year
|
|
512f0d0e
|
2019-01-03T00:57:49
|
|
make 'got update' remove files which were deleted
|
|
be7061eb
|
2018-12-30T17:30:42
|
|
ensure that 'got update' stays on the current branch
|
|
507dc3bb
|
2018-12-29T17:18:51
|
|
add a basic 'got update' command; does not merge files yet
|
|
e5dc7198
|
2018-12-29T16:07:41
|
|
fix 'same path prefix' check during checkout
|
|
2fbdb5ae
|
2018-12-29T15:54:00
|
|
remove useless strdup from got_worktree_get_repo_path()
|
|
49520a32
|
2018-12-29T15:51:56
|
|
verify path prefix when checking out into existing work tree
|
|
eecfbcd1
|
2018-12-29T15:14:24
|
|
introduce macros for status codes
|
|
a0eb853d
|
2018-12-29T15:12:23
|
|
make checkout status char unsigned
|
|
d7b62c98
|
2018-12-27T20:40:39
|
|
signal existing files in checkout progress output
|
|
93a30277
|
2018-12-24T20:11:47
|
|
make got_worktree_checkout_files() infer base commit from meta data
|
|
99437157
|
2018-11-11T12:52:59
|
|
abort checkout operations cleanly when Ctrl-C is hit
|
|
0c60ce5a
|
2018-04-02T11:10:05
|
|
document the current public API
|
|
92a684f4
|
2018-03-12T21:34:38
|
|
show progress during checkout
|
|
9d31a1d8
|
2018-03-11T20:39:31
|
|
initial implementation of worktree checkout
|
|
dc2404d9
|
2018-03-11T14:28:36
|
|
remove got_worktree_change_head() for now
|
|
35be1456
|
2018-03-11T14:27:53
|
|
implement got_worktree_get_head_ref_name()
|
|
4d94df2d
|
2018-03-11T01:19:40
|
|
rename worktree set_head() operation to change_head()
|
|
606778cd
|
2018-03-11T01:18:45
|
|
fileindex update function probably won't be needed after all
|
|
577ec78f
|
2018-03-11T01:15:39
|
|
store a path prefix in the worktree; will be used for subtree checkout
|
|
281294a5
|
2018-03-10T17:14:25
|
|
add stub for anticipated worktree function which updates fileindex
|
|
86c3caaf
|
2018-03-10T00:22:23
|
|
add worktree skeleton code; implement got_worktree_init()
|