* 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.
		
			
				
	
	
		
			51 lines
		
	
	
	
		
			1.3 KiB
			
		
	
	
	
		
			Haskell
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
	
		
			1.3 KiB
			
		
	
	
	
		
			Haskell
		
	
	
	
	
	
{- git-annex command
 | 
						|
 -
 | 
						|
 - Copyright 2016-2018 Joey Hess <id@joeyh.name>
 | 
						|
 -
 | 
						|
 - Licensed under the GNU GPL version 3 or higher.
 | 
						|
 -}
 | 
						|
 | 
						|
module Command.Adjust where
 | 
						|
 | 
						|
import Command
 | 
						|
import Annex.AdjustedBranch
 | 
						|
 | 
						|
cmd :: Command
 | 
						|
cmd = notBareRepo $ notDirect $ noDaemonRunning $
 | 
						|
	command "adjust" SectionSetup "enter adjusted branch"
 | 
						|
		paramNothing (seek <$$> optParser)
 | 
						|
 | 
						|
optParser :: CmdParamsDesc -> Parser Adjustment
 | 
						|
optParser _ =
 | 
						|
	(LinkAdjustment <$> linkAdjustmentParser)
 | 
						|
	<|> (PresenceAdjustment <$> presenceAdjustmentParser <*> maybeLinkAdjustmentParser)
 | 
						|
 | 
						|
linkAdjustmentParser :: Parser LinkAdjustment
 | 
						|
linkAdjustmentParser =
 | 
						|
	flag' UnlockAdjustment
 | 
						|
		( long "unlock"
 | 
						|
		<> help "unlock annexed files"
 | 
						|
		)
 | 
						|
	<|> flag' FixAdjustment
 | 
						|
		( long "fix"
 | 
						|
		<> help "fix symlinks to annnexed files"
 | 
						|
		)
 | 
						|
 | 
						|
maybeLinkAdjustmentParser :: Parser (Maybe LinkAdjustment)
 | 
						|
maybeLinkAdjustmentParser = Just <$> linkAdjustmentParser <|> pure Nothing
 | 
						|
 | 
						|
presenceAdjustmentParser :: Parser PresenceAdjustment
 | 
						|
presenceAdjustmentParser =
 | 
						|
	flag' HideMissingAdjustment
 | 
						|
		( long "hide-missing"
 | 
						|
		<> help "hide annexed files whose content is not present"
 | 
						|
		)
 | 
						|
 | 
						|
seek :: Adjustment -> CommandSeek
 | 
						|
seek = commandAction . start
 | 
						|
 | 
						|
start :: Adjustment -> CommandStart
 | 
						|
start adj = do
 | 
						|
	checkVersionSupported
 | 
						|
	showStart' "adjust" Nothing
 | 
						|
	next $ next $ enterAdjustedBranch adj
 |