git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [Census] So who uses git?

From
Llinux@horizon.com <linux@horizon.com>
Date
Feb 1, 2006, 07:08 UTC
Message-ID
<20060201070847.2021.qmail@science.horizon.com>
Show 15 quoted lines
> Yes, I think the "assume unchanged" flag goes well together with making 
> sure that the checked-out file is non-writable at the time.
> 
> Of course, any number of editors and other actions won't care: if you do 
> anything like
> 
> 	for i in *.c
> 	do
> 		sed 's/xyzzy/bas/g' < $i > $i.new
> 		mv $i.new $i
> 	done
> 
> you'll never have even noticed that the old file was marked read-only. So 
> it's obviously not in any way any guarantee, but it probably makes sense 
> as a crutch.

At the risk of complicating something already very complicated, and possibly breaking on Microsoft file systems, that case can be detected by reading the directory and noticing that the inode number changed.

Would it be worth validating the inode numbers (which can be retrieved in a batch) even if you don't do a full lstat()?

Or is that too Unix-centric and prone to performance problems on other file systems? I'd think that, even if a file system used fake inode numbers, they'd be pretty consistent if you didn't touch the file at all, and being different would just cause a more expensive validation. Which would be okay as long as it's infrequent.

Next: Junio C Hamano
Message 1 of 5 in “Re: [Census] So who uses git?”
  1. linux@horizon.comFeb 1, 2006
  2. Junio C HamanoFeb 1, 2006
  3. Linus TorvaldsFeb 1, 2006
  4. Alex RiesenFeb 1, 2006
  5. linux@horizon.comFeb 1, 2006

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.