Commit graph

33096 commits

Author SHA1 Message Date
Joey Hess
d3e3fcb8fc
devblog 2018-10-19 17:56:53 -04:00
Joey Hess
4a788fbb3b
sync --content now supports --hide-missing adjusted branches
This relies on git ls-files --with-tree, which I'm using in a way that
its man page does not document. Hm. I emailed the git list to try to get
the docs improved, but at least the git test suite does test the same
kind of use case I'm using here.

Performance impact when not in an adjusted branch is limited to some
additional MVar accesses, and a single git call to determine the name of
the current branch. So very minimal.

When in an adjusted branch, the performance impact is
in Annex.WorkTree.lookupFile, which starts doing an equal amount of work
for files that didn't exist as it already did for files that were
unlocked.

This commit was sponsored by Jochen Bartl on Patreon.
2018-10-19 17:51:25 -04:00
Joey Hess
8be5a7269a
refactor getCurrentBranch
Both Command.Sync and Annex.Ingest had their own versions of this.

The one in Annex.Ingest used Git.Branch.currentUnsafe, but does not seem
to need it. That is only checking to see if it's in an adjusted unlocked
branch, and when in an adjusted branch, the branch does in fact exist,
so the added check that Git.Branch.current does is fine.

This commit was sponsored by Denis Dzyubenko on Patreon.
2018-10-19 17:29:18 -04:00
Ilya_Shlyakhter
c742cc41d1 quoted markdown asterisks 2018-10-19 20:41:52 +00:00
Ilya_Shlyakhter
01f7721d56 added suggestion to preserve file extensions in WORM and URL keys 2018-10-19 20:28:12 +00:00
Ilya_Shlyakhter
43a8c564a0 Added a comment 2018-10-19 17:54:49 +00:00
Ilya_Shlyakhter
97aaf38a3c Added a comment 2018-10-19 15:52:22 +00:00
andrey_utkin@49e37627b3060c40292113d73d7ffbf317233e62
c94e62cab5 Added a comment 2018-10-18 23:34:27 +00:00
andrey_utkin@49e37627b3060c40292113d73d7ffbf317233e62
82040ae2aa Added a comment 2018-10-18 20:18:01 +00:00
Joey Hess
5ddfd4f524
response 2018-10-18 15:52:48 -04:00
Joey Hess
bd72dfeaa1
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-18 15:36:48 -04:00
Joey Hess
d662e45424
devblog 2018-10-18 15:36:06 -04:00
Joey Hess
24838547e2
adjust --hide-missing
* At long last there's a way to hide annexed files whose content
  is missing from the working tree: git-annex adjust --hide-missing
* When already in an adjusted branch, running git-annex adjust
  again will update the branch as needed. This is mostly
  useful with --hide-missing to hide/unhide files after their content
  has been dropped or received.

Still needs integration with sync and the assistant, and not as fast as it
could be, but already usable.

This commit was sponsored by Ethan Aubin.
2018-10-18 15:32:42 -04:00
Joey Hess
a6c8de84b6
improve types to allow combining some adjustments
Combinations like --hide-misssing --unlocked seem very useful. On the
other hand, combining --fix with --unlock doesn't make sense because a
file can be either unlocked or a symlink that can be fixed, but not
both.

Changed the serialization of HideMissingAdjustment in passing, but it
has not actually been used yet so nothing will be broken.

This commit was sponsored by Trenton Cronholm on Patreon.
2018-10-18 12:59:05 -04:00
g@aaed65f19d6c3a2a18c33da828e66c7bb915e65a
435108a688 Added a comment: workaround: setting LC_ALL=C 2018-10-18 08:55:19 +00:00
disteph@02005197c6b0e3d92255823d62c08dbe6d7a4d52
f8aa46aa0d Added a comment 2018-10-18 08:25:35 +00:00
ewen
177a8f9716 Added a comment: Synology NAS 6.2.1-23824 2018-10-18 00:00:34 +00:00
Gus
bdcaac3eaa Added a comment: Thanks 2018-10-17 22:46:36 +00:00
Gus
7cb611de3e Added a comment: Thanks 2018-10-17 22:34:20 +00:00
andrey_utkin@49e37627b3060c40292113d73d7ffbf317233e62
474a9d7258 Added a comment 2018-10-17 22:07:15 +00:00
andrey_utkin@49e37627b3060c40292113d73d7ffbf317233e62
9f740c4613 2018-10-17 21:41:10 +00:00
Joey Hess
7625cc58ae
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-17 16:32:21 -04:00
Joey Hess
c797655712
devblog 2018-10-17 16:31:28 -04:00
erewhon_smith@6671dff14d578cb6d55a3ca285f2c54151b69f60
8c22c81b48 2018-10-17 18:50:34 +00:00
erewhon_smith@6671dff14d578cb6d55a3ca285f2c54151b69f60
a2326c3b1f removed 2018-10-17 18:47:00 +00:00
erewhon_smith@6671dff14d578cb6d55a3ca285f2c54151b69f60
3b064e386f Added a comment: comment 2 2018-10-17 18:46:17 +00:00
erewhon_smith@6671dff14d578cb6d55a3ca285f2c54151b69f60
bfa24ea1f3 Added a comment 2018-10-17 18:45:59 +00:00
Joey Hess
fc7fe2b19d
more thoughts 2018-10-17 13:26:54 -04:00
Joey Hess
558520d27a
fix rekey/migrate bookkeeping in v6
After 220317df5a the test suite still
detected a problem; migrate of an unlocked file replaced it with a
pointer file rather than a file with the content.

This was a bookeeping problem; the worktree file was being copied to the object
file and the inode cache updated, but if that database write didn't get
flushed in time, later checks would think the content was not present.
Fixed by copying the object file to the worktree file instead, which
avoids needing to update the inode cache.

Also, only copy when there's a hard link to break, not always.

This commit was sponsored by Brock Spratlen on Patreon.
2018-10-16 17:18:21 -04:00
Joey Hess
220317df5a
v6: fix migrate of unlocked file
After commit b2bafdb2fc the test suite
threw up a failure migrating unlocked files.

I'm not clear how that commit broke it (presumably by inAnnex reporting
the right information now), but the actual problem is plain:
The inodecache for the worktree file is generated, but then the file is
replaced with a copy (unncessarily unless annex.link is set, but the
code always does so) and so linkToAnnex/linkAnnex then fails because it
notices the inode cache is not valid.

This commit was sponsored by Jake Vosloo on Patreon.
2018-10-16 16:45:08 -04:00
Joey Hess
bdf6783b92
improve error message 2018-10-16 15:52:40 -04:00
Joey Hess
b2bafdb2fc
v6: Fix database inconsistency
That could cause git-annex to get confused about whether a locked file's
content was present, when the object file got touched.

Unfortunately this means more work sometimes when annex.thin is set,
since it has to checksum the file to tell if it's still got the right
content.

Had to suppress output when inAnnex calls isUnmodified, otherwise
"(checksum...)" would be printed in places it ought not to be,
eg "git annex get" could turn out not need to get anything, and
so only display that.

This commit was sponsored by Ole-Morten Duesund on Patreon.
2018-10-16 13:51:37 -04:00
Joey Hess
6498643caf
bug report 2018-10-16 11:41:12 -04:00
Joey Hess
588db2058f
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-16 11:29:44 -04:00
Joey Hess
3cc273990c
rename to avoid render as html 2018-10-16 11:23:31 -04:00
Joey Hess
11369257de
push back on random conversation in release announcements 2018-10-16 11:17:24 -04:00
Chris
832365809e Added a comment 2018-10-16 15:15:17 +00:00
CandyAngel
0c32f29e21 Added a comment 2018-10-16 15:05:19 +00:00
Joey Hess
8211f6bb87
remove addition
I understand and sympathize with why this was added here, but the fact
is that this kind of warning is clutter that is going to make it harder
to understand this man page overall; this is not the place to document
internal implementation details of the format of URL keys and more than
it would be the place to document how WORM keys mangle and truncate
filenames, or how the extension of a SHAnE key is chosen. I see that
it did get documented better in backends.mdwn, which is a good place
to document it.

The chance that someone is going to have the same misunderstanding and
happen to see this warning does not justify confusing everyone else
with a warning that is really out of place in this documentation.
2018-10-16 11:00:22 -04:00
Joey Hess
6dd31233e8
response 2018-10-16 10:58:39 -04:00
Joey Hess
40dba8e933
prevent find running in bare repo 2018-10-16 10:44:09 -04:00
hoxu
62afca598d Added a comment: wget link broken 2018-10-16 14:23:29 +00:00
CandyAngel
b12b3aa0fe Added a comment 2018-10-16 12:57:55 +00:00
Chris
51dc5fda3f Added a comment 2018-10-16 11:07:30 +00:00
disteph@02005197c6b0e3d92255823d62c08dbe6d7a4d52
6a44da82e8 Added a comment: --all ? 2018-10-15 23:57:27 +00:00
CandyAngel
6b3b072c2a Added a comment 2018-10-15 22:23:06 +00:00
Chris
1c29288356 Added a comment 2018-10-15 21:43:03 +00:00
CandyAngel
f25f24c9dd removed 2018-10-15 13:00:22 +00:00
CandyAngel
b66cb8e120 Added a comment 2018-10-15 12:59:49 +00:00
CandyAngel
cd96275582 Added a comment 2018-10-15 12:59:24 +00:00