Опция --dry-run
для git svn dcommit
очень полезна для точного определения того, что будет совершено в Subversion. В частности это имеет свойства, которые:
- На самом деле он ничего не передает Subversion
- Он сообщает вам, какие различия будут рассчитаны для создания новых ревизий в Subversion
- Он сообщает вам, какую ветку в Subversion вы будете фиксировать - это иногда неочевидно, поскольку оно берется из ветви Subversion, указанной в первом коммите-предке, с git-svn-id в его сообщении о коммите
В целом, лучше сделать git svn rebase
, прежде чем даже подумать об использовании dcommit
, чтобы ваша история была линеаризована - в противном случае фиксация слиянием может не иметь большого смысла в истории Subversion. (Если вы это сделали, то git log
и gitk --all
также будут по существу эквивалентны, но я думаю, что git svn dcommit --dry-run
даст вам более точное представление о том, что должно произойти, даже если его труднее интерпретировать.)