Commit graph

12195 commits

Author SHA1 Message Date
yarikoptic
0bde6e8cf4 initial dedicated issue on copy --from --to not copying if present locally 2023-11-17 02:07:35 +00:00
yarikoptic
7205876d23 initial report on --fast of being no effect for copy --from --to 2023-11-16 17:54:49 +00:00
Ilya_Shlyakhter
a15446b458 added bug report for git init on a worktree checked out for a submodule. 2023-11-15 18:45:52 +00:00
grond66@79ca29ba964cd0d8e2f352871d54452e4a9dad88
a79d819b5b 2023-11-14 04:32:15 +00:00
aurelien@f0d0a0c7da69eff6badf0464898f0a859f69114d
eb846403c9 2023-11-06 01:48:43 +00:00
nobodyinperson
b0b54b678b report 2023-11-05 13:58:25 +00:00
Joey Hess
c41ca6c832
convert StorableCipher to ByteString
This allows getting rid of the ugly and error prone handling of
"bag of bytes" String in Remote.Helper.Encryptable.
Avoiding breakage like that dealt with by commit
9862d64bf9

And allows converting Utility.Gpg to use ByteString for IO, which is
a welcome change.

Tested the new git-annex interoperability with old, using all 3
encryption= types.

Sponsored-By: the NIH-funded NICEMAN (ReproNim TR&D3) project
2023-11-01 14:39:49 -04:00
Joey Hess
9862d64bf9
bring back "bag of bytes" handling for ciphers
Fixes test suite failure with LANG=C caused by commit
3742263c99

Sponsored-By: the NIH-funded NICEMAN (ReproNim TR&D3) project
2023-11-01 13:09:42 -04:00
Joey Hess
c927a38dc5
reproduced 2023-11-01 12:19:50 -04:00
yarikoptic
99ec795c6a initial bug report 2023-10-30 22:03:20 +00:00
Joey Hess
f8d35d9480
lookupkey: Sped up --batch
When the file is relative, it does not need to be passed
through git lsfiles to normalize it.

Sponsored-by: Kevin Mueller on Patreon
2023-10-30 14:59:09 -04:00
mih
2299ee2519 Report on a possibly unknown slowness of lookupkey 2023-10-30 07:45:05 +00:00
Joey Hess
ae4ed08fc6
Merge branch 'master' of ssh://git-annex.branchable.com 2023-10-23 13:56:22 -04:00
Joey Hess
12e751bbb6
improve docs 2023-10-23 13:55:53 -04:00
Manager2103
847e9b4a3c Added a comment 2023-10-23 17:50:22 +00:00
Joey Hess
70d11a209d
notabug 2023-10-23 13:46:46 -04:00
matrss
efad352738 2023-10-23 15:16:18 +00:00
branch
079323e846 Added a comment 2023-10-23 09:57:00 +00:00
Manager2103
fe3b85a744 Added a comment 2023-10-21 17:22:53 +00:00
Joey Hess
5d807fcac0
notabug 2023-10-21 12:27:24 -04:00
Joey Hess
434f70f2ce
Merge branch 'master' of ssh://git-annex.branchable.com 2023-10-21 12:25:19 -04:00
Joey Hess
6a61c7ff45
Fix crash of enableremote when the special remote has embedcreds=yes
The crash occurred because writeCreds got called twice, and writeFileProtected
neglected to close its file handle, so the file was open for write when
written the second time.

It seems unncessary and suboptimal that writeCreds gets called twice.
One call is from getRemoteCredPair and the other from setRemoteCredPair'.
What happens is that in the enableremote case, code that also runs at
initremote does unncessary work. Might be possible to improve that, but
I've gone for the simple fix.

Sponsored-by: k0ld on Patreon
2023-10-20 13:19:12 -04:00
Manager2103
fbb29e29de 2023-10-20 16:14:24 +00:00
Manager2103
04e76d138f 2023-10-20 16:13:30 +00:00
Manager2103
017dfd2385 2023-10-20 16:12:03 +00:00
Manager2103
7d992dff46 2023-10-20 16:10:54 +00:00
kdm9
3bdca88419 new bug: git annex enableremote locking issue 2023-10-17 10:13:47 +00:00
Joey Hess
c268dc5878
only stage regular files from the journal
git-annex only writes regular files there, but other things may drop junk
like empty .DAV directories around the tree. And trying to hash such things
can have weird and hard to understand effects. So it seems best to do a
small amount of work in statting the journal file to make sure it's a
regular file.

Sponsored-by: Jack Hill on Patreon
2023-10-10 13:22:02 -04:00
Joey Hess
35206e32f2
Merge branch 'master' of ssh://git-annex.branchable.com 2023-10-10 12:56:09 -04:00
beryllium@5bc3c32eb8156390f96e363e4ba38976567425ec
e2a9263548 Added a comment 2023-10-10 02:36:51 +00:00
beryllium@5bc3c32eb8156390f96e363e4ba38976567425ec
b1b269c7c8 Added a comment 2023-10-09 22:30:46 +00:00
Joey Hess
c2aeabc738
comment 2023-10-09 15:00:33 -04:00
Joey Hess
2195280920
comment 2023-10-09 14:38:24 -04:00
Joey Hess
7d20487e43
commnet 2023-10-09 14:29:06 -04:00
beryllium@5bc3c32eb8156390f96e363e4ba38976567425ec
7ac22dc834 2023-10-09 07:41:37 +00:00
Atemu
ef31f16abb 2023-10-01 10:06:18 +00:00
Joey Hess
72bfcd987c
analysis 2023-09-26 13:18:08 -04:00
Joey Hess
3ca7812310
followup 2023-09-26 13:04:42 -04:00
Joey Hess
0d86e58e4c
update 2023-09-22 16:03:09 -04:00
Joey Hess
ea92fc85aa
close 2023-09-22 15:52:28 -04:00
Joey Hess
2ba68644b9
close 2023-09-22 15:47:40 -04:00
Joey Hess
5fd270a8c1
close 2023-09-22 15:45:49 -04:00
Joey Hess
3e6fd6cd2d
close 2023-09-22 15:38:58 -04:00
Joey Hess
808ae573ce
close 2023-09-22 15:37:47 -04:00
Joey Hess
4e1ad74a68
moreinfo 2023-09-22 15:35:01 -04:00
Joey Hess
a8d6481c0a
argh 2023-09-22 15:34:30 -04:00
Joey Hess
c85e52fd85
hmmm 2023-09-22 15:17:10 -04:00
Joey Hess
269a9494e1
hm 2023-09-22 15:06:30 -04:00
Joey Hess
415e899741
analysis 2023-09-22 14:49:21 -04:00
Joey Hess
9153f3e475
close as seems fixed 2023-09-22 13:34:39 -04:00
Joey Hess
8624e13b5f
close 2023-09-22 13:31:37 -04:00
Joey Hess
41f4d0bda9
enableremote: Avoid overwriting existing git remote when passed the uuid of a specialremote that was earlier initialized with the same name 2023-09-22 13:29:48 -04:00
Joey Hess
80ee107880
moreinfo 2023-09-22 12:59:32 -04:00
Joey Hess
8f9f8076b6
comment 2023-09-22 12:58:19 -04:00
Joey Hess
bf814d55cc
done 2023-09-22 12:55:37 -04:00
Joey Hess
45f39e58ff
document -C behavior with exporttree remotes 2023-09-22 12:40:40 -04:00
Joey Hess
5479e2327b
comment 2023-09-22 12:36:15 -04:00
Joey Hess
d01e4b51ae
comment 2023-09-13 13:01:19 -04:00
jstritch
d12af0db78 Added a comment 2023-09-12 16:36:26 +00:00
Joey Hess
7be8950138
propigateAdjustedCommits in seekExportContent
push: When on an adjusted branch, propagate changes to parent branch before
updating export remotes.

This is a somewhat redundant call to propigateAdjustedCommits, since it
also gets called at pushLocal time. That other one needs to come after
importing from importtree remotes though, and seekExportContent has to come
earlier, so I don't see a way to avoid doing it twice.

Note that git-annex sync also manages to avoid the problem, it's only
git-annex push that had the bug.

Sponsored-by: Leon Schuermann on Patreon
2023-09-11 14:54:26 -04:00
Joey Hess
f3e5fc6d89
comment (and close) 2023-09-11 13:19:55 -04:00
Joey Hess
ec63bab79b
comment 2023-09-11 13:15:56 -04:00
jstritch
bd2e565592 2023-09-10 15:56:21 +00:00
jstritch
826918fb05 Added a comment: git annex pull is also broken 2023-09-09 14:49:35 +00:00
jstritch
c7346c2c47 2023-09-08 15:56:59 +00:00
Joey Hess
ecb9fb3b70
comment 2023-09-07 15:07:41 -04:00
Joey Hess
baf8e4f6ed
Override safe.bareRepository for git remotes
Fix using git remotes that are bare when git is configured
with safe.bareRepository = explicit

Sponsored-by: Dartmouth College's DANDI project
2023-09-07 14:56:26 -04:00
Joey Hess
cbfd214993
set safe.directory when getting config for git-annex-shell or git remotes
Fix more breakage caused by git's fix for CVE-2022-24765, this time
involving a remote (either local or ssh) that is a repository not owned by
the current user.

Sponsored-by: Dartmouth College's DANDI project
2023-09-07 14:40:50 -04:00
yarikoptic
4d165518c3 original report on misleading reasons stated by enableremote for the need of safe.directory case 2023-08-31 15:58:52 +00:00
gitannex@fe613c61745e9d1e7f6df5e24a666828bb5682cc
86c70833a1 Added a comment 2023-08-31 01:56:30 +00:00
gitannex@fe613c61745e9d1e7f6df5e24a666828bb5682cc
578f24b632 2023-08-31 01:44:23 +00:00
gitannex@fe613c61745e9d1e7f6df5e24a666828bb5682cc
2837c63282 2023-08-31 01:40:02 +00:00
gitannex@fe613c61745e9d1e7f6df5e24a666828bb5682cc
e67050b8d3 2023-08-31 01:34:23 +00:00
Joey Hess
70acc8864d
comment 2023-08-28 12:20:49 -04:00
derphysiker
b2887edc96 2023-08-27 07:38:44 +00:00
Joey Hess
88b0bb5793
fix build on windows
thanks to jkniiv
2023-08-18 13:03:47 -04:00
jkniiv
740d7a43be report on a build failure on Windows regarding Utility.Url.Parse 2023-08-17 09:53:39 +00:00
Joey Hess
ea6f5bfc01
done 2023-08-16 16:02:03 -04:00
Joey Hess
9fffa85a9e
comment 2023-08-15 13:21:28 -04:00
Joey Hess
d467c70ef7
change sync content transition plan and fine tune warning
Only display warning when git-annex sync (without --content or
--no-content) is used with repositories that have preferred content
configured.

Sponsored-by: Leon Schuermann on Patreon
2023-08-14 13:51:35 -04:00
aurtzy
d8602aace0 include system that i forgot in report 2023-08-13 19:48:46 +00:00
aurtzy
1c621f24d8 2023-08-11 01:22:30 +00:00
Joey Hess
3f6c762a3d
comment 2023-08-08 13:43:04 -04:00
jkniiv
e9ad2d83f4 Added a comment 2023-08-08 16:38:53 +00:00
Joey Hess
6d83bcff0f
Fix behavior of onlyingroup
Sponsored-by: k0ld on Patreon
2023-08-07 13:05:11 -04:00
jkniiv
b4d1591283 report on --onlyingroup only partially working 2023-08-05 11:15:30 +00:00
Joey Hess
471ea17ae3
comment 2023-07-21 15:33:59 -04:00
Joey Hess
15f5a9b837
remove spam 2023-07-21 15:15:11 -04:00
Joey Hess
f7dc2511f7
comment 2023-07-21 15:14:36 -04:00
Joey Hess
b15366494a
directory: Remove empty hash directories when dropping content
Failure to remove is not treated as a problem, and no permissions
modifications are done, to avoid unexpected states.

Sponsored-by: Luke Shumaker on Patreon
2023-07-21 14:57:29 -04:00
Joey Hess
33ba537728
deal with Amazon S3 breaking change for public=yes
* S3: Amazon S3 buckets created after April 2023 do not support ACLs,
  so public=yes cannot be used with them. Existing buckets configured
  with public=yes will keep working.
* S3: Allow setting publicurl=yes without public=yes, to support
  buckets that are configured with a Bucket Policy that allows public
  access.

Sponsored-by: Joshua Antonishen on Patreon
2023-07-21 13:59:07 -04:00
Joey Hess
ddc7f36d53
comment 2023-07-21 13:01:46 -04:00
hipohaha
214907acef Added a comment: thank 2023-07-21 10:08:15 +00:00
tomdhunt
cdcb30464a 2023-07-19 02:49:48 +00:00
adina.wagner@2a4cac6443aada2bd2a329b8a33f4a7b87cc8eff
4b7362166b 2023-07-18 09:13:47 +00:00
nobodyinperson
bbff6dbb83 bug report 2023-07-17 10:56:08 +00:00
nobodyinperson
64edb19328 Added a comment 2023-07-17 06:12:27 +00:00
ewen
0dc8b03588 Added a comment: unspecified default preferred content = present 2023-07-17 00:50:09 +00:00
alex
f504781127 2023-07-16 06:51:33 +00:00
nobodyinperson
82ec9e5a5b Added a comment 2023-07-15 17:04:38 +00:00
Joey Hess
116b8affe5
comment 2023-07-15 12:28:32 -04:00
agot
4f85a6ac84 2023-07-14 19:14:34 +00:00
Joey Hess
b00200c73c
comment 2023-07-13 20:02:41 -04:00
ewen
1c0b53e838 Added a comment: git mv to temporary name, commit, git mv back, commit, can resolve duplicates 2023-07-13 01:12:34 +00:00
ewen
d1e87c49fc Added a comment 2023-07-13 00:54:35 +00:00
ewen
2469720e1e Added a comment: Plumbing commands vs Porcelain commands 2023-07-13 00:26:20 +00:00
Joey Hess
6a4dfb172d
Merge branch 'master' of ssh://git-annex.branchable.com 2023-07-12 13:55:10 -04:00
Joey Hess
bf496b16a4
comment 2023-07-12 13:54:59 -04:00
jkniiv
749b532e8f Added a comment 2023-07-12 17:30:52 +00:00
Joey Hess
b6314c0207
comment 2023-07-12 13:27:33 -04:00
jkniiv
b6c5b471b0 Added a comment 2023-07-12 16:25:49 +00:00
nobodyinperson
4ed5cfa812 Added a comment 2023-07-12 13:10:26 +00:00
ewen
98f1eb48ea Added a comment: Alternative proposal for better backwards compatibility 2023-07-12 12:48:04 +00:00
nobodyinperson
d030ed8eb9 Added a comment: There is already something like fullsync: git annex assist, suggestion: new metasync command 2023-07-12 11:15:26 +00:00
ewen
0386845605 Added a comment: Preferred content settings not really an alternative 2023-07-12 10:53:41 +00:00
ewen
0838e7a07f Added a comment: History of change 2023-07-12 10:27:43 +00:00
nobodyinperson
e4cb4ec3d2 Added a comment 2023-07-12 09:21:56 +00:00
jkniiv
1b8d5940bd Added a comment 2023-07-12 07:33:16 +00:00
jkniiv
12054cd7e2 Added a comment: I have to agree that this change to sync is annoying 2023-07-12 07:18:54 +00:00
ewen
d733b8ed04 Recommend accepting "list" output encoding of filename as input too 2023-07-12 06:54:05 +00:00
nobodyinperson
c001844dd3 Added a comment 2023-07-12 06:49:48 +00:00
ewen
6ed3ed7e57 Suggest using "git annex fullsync" to trigger a full sync, not changing "git annex sync" behaviour 2023-07-12 04:16:48 +00:00
Joey Hess
240bae38f6
sync: When in an adjusted branch, merge changes from the original branch
This causes changes to the original branch to get merged with a single
sync. Before, it took 2 syncs; the first happened to update the synced/
branch, and the second merged changes from the synced/ branch into the
ajusted branch.

Using mergeToAdjustedBranch when tomerge == origbranch is probably
overkill, but it does work fine.

Sponsored-By: the NIH-funded NICEMAN (ReproNim TR&D3) project
2023-07-06 12:42:24 -04:00
Joey Hess
adb09117f1
propigateAdjustedCommits: avoid overwriting diverged original branch
Bug fix: Re-running git-annex adjust or sync when in an adjusted branch
would overwrite the original branch, losing any commits that had been made
to it since the adjusted branch was created.

When git-annex adjust is run in this situation, it will display a warning
about the diverged branches.

When git-annex sync is run in this situation, mergeToAdjustedBranch
will merge the changes from the original branch to the adjusted branch.
So it does not need to display the divergence warning.

Note that for some reason, I'm needing to run sync twice for that to
happen. The first run does not do the merge and the second does. I'm unsure
why and so am not fully done with this bug.

Sponsored-By: the NIH-funded NICEMAN (ReproNim TR&D3) project
2023-07-05 17:09:49 -04:00
Joey Hess
a05bc6a314
Fix breakage when git is configured with safe.bareRepository = explicit
Running git config --list inside .git then fails, so better to only
do that when --git-dir was specified explicitly. Otherwise, when the
repository is not bare, run the command inside the working tree.

Also make init detect when the uuid it just set cannot be read and fail
with an error, in case git changes something that breaks this later.

I still don't actually understand why git-annex add/assist -J2 was
affected but -J1 was not. But I did show that it was skipping writing to
the location log, because the uuid was NoUUID.

Sponsored-by: Graham Spencer on Patreon
2023-07-05 14:43:14 -04:00
Joey Hess
321681cd1b
renamed bug 2023-07-05 14:09:21 -04:00
Joey Hess
9d2a7c4bb6
erk 2023-07-05 13:57:28 -04:00
Joey Hess
fe0e0c0523
also affects add 2023-07-05 13:42:52 -04:00
Joey Hess
3c1d18cb3b
assist: With --jobs, parallelize transferring content to/from remotes
Command.Add.seek starts concurrency with CommandStages. And for
Command.Sync, it needs TransferStages. So, to get both types of concurrency
for the two different parts, it either needs to change the type of
concurrency in between, or just call startConcurrency once for each.

It seems safe enough to call startConcurrency twice, because it does shut
down concurrency (mostly) at the end, and eg the old Annex.workers get
emptied.

Sponsored-by: unqueued on Patreon
2023-07-05 12:47:30 -04:00
Joey Hess
c2c2abe6ca
bug 2023-07-05 12:11:48 -04:00
nobodyinperson
583f87fdca 2023-07-04 18:49:01 +00:00
yarikoptic
d735bad076 initial report on annex sync odd behavior loosing my precious commit 2023-06-30 19:39:46 +00:00
Joey Hess
e1fc9e204e
added git-annex satisfy
This ended up having an interface like sync, rather than like get/copy/drop.
That let it be implemented in terms of sync, which took a lot less code.
Also, it lets it handle many of the edge cases that sync does, such as
getting files that are not visible in a --hide-missing branch, and sending
files to exporttree remotes.

As well as being easier to implement, `git-annex satisfy myremote` makes
sense as it satisfies the preferred content settings of the remote.
`git-annex satisfy somefile` does not form a sentence that makes sense. So
while -C can be a little bit annoying, it still makes sense to have this
syntax.

Note that, while I initially thought this would also satisfy numcopies, it
does not. Arguably it ought to. But, sync does not send files in order to
satisfy numcopies, it only sends files to satisfy preferred content. And
it's important that this transfer the same files as sync does, because
it will probably be used in a workflow where the user sometimes syncs and
sometimes satisfies, and does not expect satisfy to do things that sync
would not do.

(Also opened a new bug that also affects sync et all, not only this command.)

Sponsored-by: Nicholas Golder-Manning on Patreon
2023-06-29 15:34:53 -04:00
pat
63e116768c 2023-06-29 04:45:15 +00:00
Joey Hess
19570263c0
reopen on second thought 2023-06-22 13:48:48 -04:00
Joey Hess
6c84aabe63
document annex.thin risk to locked files pointing at same content 2023-06-21 15:39:15 -04:00
Joey Hess
928b2a4839
create journal directory in withJournalHandle
Fixes a crash by git-annex repair when .git/annex/journal/ does not exist.

Normally the journal directory is created before withJournalHandle gets
run, but git-annex repair can be run in a situation where it does not
exist.
2023-06-21 15:23:59 -04:00
Joey Hess
aa8be9850a
close old bug report 2023-06-21 14:51:17 -04:00
Joey Hess
e59a0b8ce7
apparently fixed 2023-06-21 14:45:36 -04:00
Joey Hess
618ef04f86
closing some old bugs 2023-06-21 14:42:36 -04:00
Joey Hess
65227798b2
close 2023-06-21 14:39:51 -04:00
Joey Hess
55d02d383c
comment 2023-06-21 14:36:54 -04:00
Joey Hess
b4c945a8ae
close 2023-06-21 14:32:01 -04:00
Joey Hess
8f5382daa1
close (for real this time) 2023-06-21 14:27:33 -04:00
Joey Hess
4cd44583b9
moreinfo 2023-06-21 14:23:57 -04:00
Joey Hess
fb6098a523
moreinfo 2023-06-21 14:21:34 -04:00
Joey Hess
9925543039
moreinfo 2023-06-21 14:11:38 -04:00
Joey Hess
02b56f1d9d
comment 2023-06-21 14:10:34 -04:00
Joey Hess
ffd737e2be
update 2023-06-21 13:59:13 -04:00
Joey Hess
6d31f35f42
close 2023-06-21 13:56:10 -04:00