Alex Rivera | Logout

git svn status - showing changes that are not committed to svn

Asked 2010-03-11T16:20:31.517
22

I'm looking for a command in git-svn that will show me the changes I have committed to my git repository but that aren't yet committed to the central svn repository. I'm looking for something that works like svn status, but I'm using git-svn, and unfortunately, git svn status is not a valid command.

I tried git status but it does not solve this problem, as it shows changes that haven't been committed to my local git repo.

I also tried git svn dcommit --dry-run, but it doesn't tell me which files are ready to be dcommitted - it only shows the repository URL.

Edit
Report

1 Answer

24

Assuming the branch for the remote Subversion repository is at remotes/git-svn, run the following:

git svn fetch

The fetch will ensure that remotes/git-svn is up-to-date. (Thanks to Mark for pointing this out in a comment.)

git diff --name-status remotes/git-svn

This should show you the name and status of all the files that have been committed to git but not to Subversion, just like the svn status command.

In case you're not sure where the branch containing the Subversion remote repository is located, you can run:

git branch -a

which should produce output similar to the following:

* master
  remotes/git-svn

You can probably guess from this that the remote Subversion repository is in remotes/git-svn.

answered 2010-03-15T16:53:14.497

Your Answer