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

[noob] is this normal behavior

From
HPHarry Putnam <reader@newsguy.com>
Date
May 9, 2017, 13:02 UTC
Message-ID
<868tm6w5bz.fsf@local.lan>
Setup: Running openindiana (hipster) a solaris 11 open source branch
       git 2.12.2
       
I've recently moved from mercurial to git mainly because git appears
to receive the most development and the heaviest use.

I'm using git with hold over behavior developed from my time using cvs long ago.

I keep a hierarchy of directories and files that mirrors the structure on the OS where git is installed [just where ever tracked files are located on OS] not the entire structure.

I keep a git repo on the same OS that is created by rsyncing the BUFFERED hierarchy into a git repo

Many of the BUFFERED files are symlinked to there places in the OS

Some are not because certain files being symlinked seemed to cause permissions type problems on the OS. In those cases they are periodically copied to the BUFFER hierarchy

So, not to get too tangled up in explaining my setup... tracked files change in the buffer area or new files are created there.

Periodically I rsync the files in BUFFER over the files in git repo
And record the changes thru normal git operations

git status git add (when needed) git commit

,----
| Aside:
| While I would welcome comments or suggestions about using a setup like
| this, that is not the subject of this post.
`----

This is my most recent attempt at learning and using git but I have done a few tries before.

I'm noticing behavior I do not recall seeing in earlier attempts.

rsyncing the buffer over the git repo is now producing a result where `git status' shows any changed or added files as modified or new but all need to be added before a commit can take place, not just the new ones.

Shouldn't files that changed but are already being tracked just show up as modified and not need adding?

That is, if I have the file ~/.bashrc, which is really a symlink to BUFFER/OS/export/home/reader/.bashrc

  And is tracked in git repo as REPO/OS/export/home/reader/.bashrc
When;
  BUFFER/OS/export/home/reader/.bashrc
is edited.
Then  rsynced like below:
  BUFFER <root of rsync is here> /OS/export/home/reader/.bashrc
over
  GITREPO <root of rsync> /OS/export/home/reader.bashrc
Thereby changing the repo file in place

Since that file is already being tracked; shouldn't `git status' show that file as modified but ready to be committed instead of a file that is modified but needs to be added before a commit can happen?

Another side of this is that a `git diff FILE' only works before an `git add .' operation is done.

That is, if I run `git diff FILE' AFTER `git add' .. no diff is reported, even though it is not committed yet.

So, for example: if I'm committing and in the vi buffer of the commit and want to see a diff of FILE to aid my log notes.

 git diff FILE will report nothing whatever.
Is that expected behavior?
Next: Igor Djordjevic
Message 1 of 3 in “[noob] is this normal behavior”
  1. Harry PutnamMay 9, 2017
  2. Igor DjordjevicMay 9, 2017
  3. Harry PutnamMay 10, 2017

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.