comment
This commit is contained in:
		
					parent
					
						
							
								29d687dce9
							
						
					
				
			
			
				commit
				
					
						647fc90b12
					
				
			
		
					 1 changed files with 39 additions and 0 deletions
				
			
		|  | @ -0,0 +1,39 @@ | ||||||
|  | [[!comment format=mdwn | ||||||
|  |  username="joey" | ||||||
|  |  subject="""comment 1""" | ||||||
|  |  date="2021-10-15T16:21:19Z" | ||||||
|  |  content=""" | ||||||
|  | Since this was posted, fsck has stopped complaining about files dropped | ||||||
|  | with `dropunused`. | ||||||
|  | 
 | ||||||
|  | > What's important though is that this workflow doesn't involve manually | ||||||
|  | > running magic git annex commands for every deleted file on all possible | ||||||
|  | > remotes (especially not hard to reach ones). | ||||||
|  | 
 | ||||||
|  | If a repository is not accessible, this is difficult to implement. | ||||||
|  | 
 | ||||||
|  | It seems that the closest we can get to implementing it is | ||||||
|  | something like `dropunused`, which can be run in that inaccessible | ||||||
|  | repository at some later point when it's accessible, and catch up on | ||||||
|  | dropping all the files that have become unwanted while it was inaccessible. | ||||||
|  | 
 | ||||||
|  | One way to do that without relying on the idea of "unused" would be to tag | ||||||
|  | a file with metadata saying its content ought to be deleted from | ||||||
|  | everywhere. That is possible to do now, eg: | ||||||
|  | 
 | ||||||
|  | 	git annex metadata --tag deletethis foo | ||||||
|  | 	git annex drop --all --metadata tag=deletethis --force | ||||||
|  | 
 | ||||||
|  | That drop can be run in every clone over time to delete all the tagged | ||||||
|  | files. | ||||||
|  | 
 | ||||||
|  | I could imagine formalizing this ad-hoc tag into something standard in | ||||||
|  | git-annex. Perhaps similar to how dead files are currently indicated. | ||||||
|  | But one problem with it is it may not play well in multiuser | ||||||
|  | environments where people have different ideas about what files they want | ||||||
|  | to delete all copies of. If two users are using dropunused and have a | ||||||
|  | disagreement, they will have 2 different branches, which are forked, and | ||||||
|  | neither will step on the other's toes when they run dropunused against | ||||||
|  | their branches and drop content that is still used on the other person's | ||||||
|  | branch. But a tag like "deletethis" is repository global. | ||||||
|  | """]] | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Joey Hess
				Joey Hess