Added a comment: I don't think there is one
This commit is contained in:
		
					parent
					
						
							
								4241c64a8d
							
						
					
				
			
			
				commit
				
					
						15e9feb1e9
					
				
			
		
					 1 changed files with 28 additions and 0 deletions
				
			
		|  | @ -0,0 +1,28 @@ | |||
| [[!comment format=mdwn | ||||
|  username="jkniiv" | ||||
|  avatar="http://cdn.libravatar.org/avatar/05fd8b33af7183342153e8013aa3713d" | ||||
|  subject="I don't think there is one" | ||||
|  date="2022-09-02T02:04:29Z" | ||||
|  content=""" | ||||
| Firstly, I don't think there is an agreement on what proper file permissions mean on local filesystems | ||||
| across OSes. Without a central authority what one denies the other can easily allow thus bypassing | ||||
| permissions. So basically you are semantically only left with permission \"hints\" or \"suggestions\" | ||||
| -- this file is to be treated read only, that file is supposed to be executable and so on -- that is, without | ||||
| any reference to a common user/group authority. | ||||
| 
 | ||||
| AFAIK, there's some cross-platform support for symlinks on say NTFS, at least between linux | ||||
| and windows. The problem is that NTFS symlinks are *typed* -- they are either directory or file | ||||
| symlinks and while git on windows can restore symlinks (with core.symlinks = true) post-checkout | ||||
| (for instance with `git restore`), it can't seem to be able to decide which kind it needs *during* | ||||
| checkout, so it simply places symlink contents as regular files at first and declares them modified. | ||||
| 
 | ||||
| Considering that git's own handling of symlinks is lackluster on Windows, it's no wonder that Joey hasn't | ||||
| been very enthusiastic about adding the support for the regular indirect locked mode there. | ||||
| E.g., I'll refer you to this archived todo in Google's cache for context: <https://webcache.googleusercontent.com/search?q=cache:Bu24xB2MR94J:https://git-annex.branchable.com/todo/utilising_the_mklink_command_on_windows_to_utilise_symlinks_and_therefore_indirect_mode_on_windows/> | ||||
| 
 | ||||
| As for locking, Joey can probably expand on that subject. | ||||
| 
 | ||||
| All in all there are several obstacles to working with checked out files across platforms. As far as I can tell | ||||
| the only cross-platform format is a bare remote with permissive file modes which is of course a bit inconvenient | ||||
| for day-to-day work because usually you need that checked out worktree somewhere for your apps to operate on. | ||||
| """]] | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 jkniiv
				jkniiv