All,
I had been experiencing commit slow downs (> 15
seconds) so I decided to test it out on 1.5.4.rc0. I
use committed a file and it too ~5 seconds which is
slower than it used to be but much better (I'll need
to do an apples to apples test to quantify it better;
e.g. check in the same file w/ a repository in the
same state). In the course of using 1.5.4.rc0 I did a
git svn dcommit -n and observed the following:
git svn dcommit -n
Rebuilding
.git/svn/mss_release_2.1B3/.rev_map.59aec714-b326-0410-a24e-830352df6fdd
...
r2918 = 992aa04a75fffdbdb65bae815905f96d5e3ef6bd
r2920 = e68e7f5aead05fc9e7a151e95f43b8283b0ed670
Done rebuilding
.git/svn/mss_release_2.1B3/.rev_map.59aec714-b326-0410-a24e-830352df6fdd
Committing to
svn://lucille/var/lib/svnrepos/svnMSS/branches/mss_release_2.1B3
...
diff-tree b7cc4c3d32478277c1cdf13e3abdc9dd4a225826~1
b7cc4c3d32478277c1cdf13e3abdc9dd4a225826
diff-tree 0bbb656391f5a888d07c98ccce01a4c753ef4997~1
0bbb656391f5a888d07c98ccce01a4c753ef4997
git svn dcommit -n
Committing to
svn://lucille/var/lib/svnrepos/svnMSS/branches/mss_release_2.1B3
...
diff-tree b7cc4c3d32478277c1cdf13e3abdc9dd4a225826~1
b7cc4c3d32478277c1cdf13e3abdc9dd4a225826
diff-tree 0bbb656391f5a888d07c98ccce01a4c753ef4997~1
0bbb656391f5a888d07c98ccce01a4c753ef4997
git --version
git version 1.5.4.rc0.1187.gc1e8d
Notice the Rebuilding doesn't seem to be honoring the
-n "dry run" switch.
I'm not sure of the implications. Is this something
that I should worry about the .revmap being out of
sync w/ what has actually been dcommit'ed?
Bill
PS. The new path relative status is nice.
____________________________________________________________________________________
Be a better friend, newshound, and
know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ
Bill Priest [off-list ref] wrote:
All,
I had been experiencing commit slow downs (> 15
seconds) so I decided to test it out on 1.5.4.rc0. I
use committed a file and it too ~5 seconds which is
slower than it used to be but much better (I'll need
to do an apples to apples test to quantify it better;
e.g. check in the same file w/ a repository in the
same state). In the course of using 1.5.4.rc0 I did a
git svn dcommit -n and observed the following:
Are these slowdowns for commits using git-commit? or for using git-svn
dcommit?
The new rev_map format is very space-efficient, but I haven't optimized
for performance, yet. It seems to do well enough on Linux that I
don't notice any performance penalty/improvement. I'm also network
I/O bound for real-world SVN usage, too.
I haven't benchmarked .rev_map much, but the binary search could
certainly be optimized to avoid extra seeks if needed.
quoted
git svn dcommit -n
Rebuilding
.git/svn/mss_release_2.1B3/.rev_map.59aec714-b326-0410-a24e-830352df6fdd
...
r2918 = 992aa04a75fffdbdb65bae815905f96d5e3ef6bd
r2920 = e68e7f5aead05fc9e7a151e95f43b8283b0ed670
Done rebuilding
.git/svn/mss_release_2.1B3/.rev_map.59aec714-b326-0410-a24e-830352df6fdd
Committing to
svn://lucille/var/lib/svnrepos/svnMSS/branches/mss_release_2.1B3
...
diff-tree b7cc4c3d32478277c1cdf13e3abdc9dd4a225826~1
b7cc4c3d32478277c1cdf13e3abdc9dd4a225826
diff-tree 0bbb656391f5a888d07c98ccce01a4c753ef4997~1
0bbb656391f5a888d07c98ccce01a4c753ef4997
quoted
git svn dcommit -n
Committing to
svn://lucille/var/lib/svnrepos/svnMSS/branches/mss_release_2.1B3
...
diff-tree b7cc4c3d32478277c1cdf13e3abdc9dd4a225826~1
b7cc4c3d32478277c1cdf13e3abdc9dd4a225826
diff-tree 0bbb656391f5a888d07c98ccce01a4c753ef4997~1
0bbb656391f5a888d07c98ccce01a4c753ef4997
quoted
git --version
git version 1.5.4.rc0.1187.gc1e8d
Notice the Rebuilding doesn't seem to be honoring the
-n "dry run" switch.
I'm not sure of the implications. Is this something
that I should worry about the .revmap being out of
sync w/ what has actually been dcommit'ed?
--dry-run only means that it won't write to the SVN repository.
There's no need to worry about stuff that's out of sync, .rev_map only
stores information about commits already made to SVN, and is more of an
internal cache for most repositories.
All .rev_map and .rev_db files it replaces are safely deletable
unless you're using noMetadata or useSvmProps with git-svn.
--
Eric Wong