Page History

Turn Off History

Merging

File renaming problems

If, while merging, you encounter the following scary message:

  warning: too many files, skipping inexact rename detection

You'll get a whole lot of merge conflicts which one would imagine git could have taken care of. The problem, at least in my case, is that because detecting file name changes is currently an O(n^2) operation for git, which may take a long time--especially when you take into account the number of files in our repository. As such, git defines an upper limit on the search, so that it will stop after m iterations. This limit defaults to 1, but can be set by changing the value of diff.renamelimit to something higher. A value of 400, in my case, seemed to do the trick.

insufficient permission for adding an object

If, while pushing to the repo in AFS, you encounter the following error message:

  insufficient permission for adding an object to repository database

Something like git-gc must have run recently, and so directories in 'objects' need to be recreated. Git would do that as needed, but it doesn't know anything about AFS ACLs and is confused by the unix permissions it sees in our repo. The following bash shell commands may be used to rectify the situation:

cd /afs/cs.wisc.edu/p/condor/repository/CONDOR_SRC.git/objects
for i in `seq 0 255`; do dir=`printf "%02x" $i`; mkdir -p $dir; done