Use Modify|Commit to write back (commit) the changes of the selected files/directory to the repository.
The Commit wizard guides you through the commit, starting with the 'Configuration'. Based on the 'Configuration' the working copy will be scanned for changes, this is especially important when performing the Commit on a directory. Subsequent pages allow further 'customization' of the commit. Their presence depends on the changed files and directories found during the scanning phase.
Before the commit wizard opens, it checks whether you might have missed to select some files resp. directories and in this case shows a warning. For details, refer to the Preferences. Also, a warning will be issued if you are going to commit switched files or directories. Unless this is actually intended, you should switch back the corresponding entries and re-start the commit.
This page is only present when committing one or more directories.
Select Recurse into subdirectories to scan not only changes from the selected local directory, but also from subdirectories. When recursing into subdirectories, select Descend into externals to also scan for changes in external working copies.
When clicking Next the file system of your project will be scanned. This may take some time.
This page is only displayed if the option Descend into externals on the Configuration page has been selected and at least one committable entry within an external working copy has been found. For details on externals, refer to Externals.
Every such external working copy is listed with its Local Path and its URL. The project's working copy itself is also listed with local path '. '. Every working copy can be individually selected or deselected for the commit by toggeling the checkbox in Path column (either with the mouse or with <Space>-keystroke).
Working copies pointing to the same repository (the URL is helpful to see this) can be committed together, hence SmartSVN will have to perform as many commits as different repositories are involved in the overall commit process.
Warning |
When committing to multiple repositories, every commit will create its own revision in the corresponding repository. Hence, atomicity of such commits is not sustainable. This for example means that the commit to one repository can succeed while the other one fails. While fixing the failing commit another person might already have updated its working copy and only have received the successfully committed revision. This might result in (temporarily) inconsistencies of his/her overall project. |
You can choose whether to commit the selected working copies with One commit message or with Individual commit messages. If you are committing multiple working copies with different Bugtraq-Properties configuration, it's required to use Individual commit messages to have the Bugtraq-Properties functionality being present on Files page.
This page is only displayed if the option Detect moved and renamed files in the Preferences has been selected and at least one moved or renamed file pair was detected (refer to Detect Moves for details. By Differences you can toggle the integrated compare view. This will show the differences for the currently selected file in the lower part of the Commit dialog. The change display behaves similar to the Changes view.
This pages shows a list of all files and directories which were found to be committable according to the selected options from the Configuration page resp. the configuration from the Preferences. To skip a file/directory from commit, deselect the corresponding checkbox (either with the mouse or by pressing <Space>-keystroke).
Note |
SmartSVN also displays certain kinds of files which are not committable (e.g. conflicted files, refer to Common Primary File States). This is a precaution to not forget to resolve these files' problems and commit them as well (if necessary). |
You may review your changes, by expanding the dialog with the Differences button. This will show the differences for the currently selected file in the lower part of the Commit dialog. The change display behaves similar to the Changes view. Alternatively, you can also double-click a file to open a File Compare frame.
For the Commit Message you can enter arbitrary text or select an older message from the message popup right to the text field. The popup menu will show up recently entered commit messages, allow to clear this message history by Clear Message History or use Get from Log to fetch an older commit message from the log. By <Ctrl>+<Space>-keystroke you can trigger a file name completion, based on all of those files which have been selected for the commit.
Depending on whether resp. how Bugtraq-Properties are configured for the current working copy, there may be an additional 'issue ID ' input field. The name of this field can vary, depending on the Bugtraq-Properties. Its content will be appended/prepended to entered commit message afterwards, forming the final commit message.
If the spell check has been configured, SmartSVN will check the entered Commit Message for basic spelling errors. The spell check ignores file paths, i.e. strings containing a '/' and 'issue IDs ' which are part of the commit message and which can be recognized by the Bugtraq-Properties. For details regarding the spell check's popup menu, refer to Spell Checker.
Tip |
Commit messages will be displayed in various kinds of logs. Hence, a meaningful commit message is very helpful for you and your team to track your changes. |
By default, SmartSVN will warn you in case of an empty commit message. You can switch this warning off in the Preferences.
Tip |
You may configure a template message using the tsvn:logtemplate property which has to be set on the project root. For details refer to Commit Message Templates. |
If Descend into externals has been selected and multiple working copies on the Externals page have been chosen to commit, there will also be a topmost Working Copy selector. All other items on this page are always related to the selected working copy. In particular it will be necessary resp. it is recommended to enter a Commit Message for each working copy.
This page will only be displayed, if the selected files/directories for the commit, which have been scanned, contain locked files.
Select Keep locks for committed files to keep the files locked even after having them committed. Select Unlock committed files to unlock them after the commit. In this case you can also selected further unchanged but locked files which had been detected during the scan and which shall be unlocked upon a successful commit as well.
Tip |
You can configure whether Keep locks for committed files or Unlock committed files should be selected by default in the Project Settings. |
Click Finish to finally start the commit.