Can I recover lost commits in a SVN repository using a local tracking git-svn branch?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



A SVN repo I use git-svn to track was recently corrupted and a backup
was recovered. However, a week's worth of commits were lost in the
recovery. Is it possible to recover those lost commits using git-svn
dcommit on my local git repo? Is it sufficient to run git-svn dcommit
with the SHA1 of the last recovered commit in SVN? eg.

    > svn info http://tracked-svn/trunk | sed -n "s/Revision: //p"
    252
    > git log --grep="git-svn-id:.*@252" --format=oneline | cut -f1 -
d" "
    55bb5c9cbb5fe11a90ec2e9e1e0c7c502908cf9a
    > git svn dcommit 55bb5c9cbb5fe11a90ec2e9e1e0c7c502908cf9a
    Or will the git-svn-id need to be stripped from the intended
commits?

I tried this using --dry-run but couldn't tell whether it would try to
submit all commits:

    > git svn dcommit --verbose --dry-run
55bb5c9cbb5fe11a90ec2e9e1e0c7c502908cf9a
    Committing to http://tracked-svn/trunk ...
    dcommitted on a detached HEAD because you gave a revision
argument.
    The rewritten commit is: 55bb5c9cbb5fe11a90ec2e9e1e0c7c502908cf9a

I also tried a naive git-svn dcommit but receive this error (r285 is
the old SVN HEAD which was lost):

    > git svn dcommit
    Committing to http://tracked-svn/trunk ...
    Invalid filesystem revision number: No such revision 285 at /opt/
local/libexec/git-core/git-svn line 4346

Thanks for your help,
Ian.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]