Analysis
Overview
For this revision of the task, you must create new tag, and make sure that everyone commits according the rules.
Task requirements
- Create new tag for the previous iteration
- Decide which is the best place to put the commit rules and append them there - a candidate for this is REPO_MAINTENANCE
- Check the commits from last iteration to make sure that everybody commits according to the rules
- If someone doesn't follow them, you must make him to do so
- See SCS_REPO_MAINTENANCE_R1, create a wiki page from it's Implementation Idea (see if sophie-jr and sophie2 are the same and use sophie2.)
- Expand the document with linux instructions on branching/tagging.
Task result
The result of this task must be new tag for last iteration and no commits without proper comment.
Implementation idea
- Create tag named m02-pre2
- Check the comments using tortoise svn
- Create a wiki page REPO_MAINTENANCE and meet the mentioned requirements.
Related
SCS_REPO_MAINTENANCE_R0
SCS_REPO_MAINTENANCE_R1
SCS_REPO_MIGRATE_R0
SCS_REPO_MIGRATE_R1
How to demo
Show the new tag. Show the commit rules and where they are stored. Show the instructions in REPO_MAINTENANCE
Design
Checked commits from the last iteration.
Following the instructions below, tag will be created during the implementation.
Most of the task requirements will be included in REPO_MAINTENANCE.It will look this way:
Creating tag:
Another common version control concept is a tag. A tag is just a “snapshot” of a project in time. In Subversion, this idea already seems to be everywhere. Each repository revision is exactly that—a snapshot of the filesystem after each commit.
However, people often want to give more human-friendly names to tags, like release-1.0. And they want to make snapshots of smaller subdirectories of the filesystem. After all, it's not so easy to remember that release-1.0 of a piece of software is a particular subdirectory of revision 4822.
- How to create a tag on Linux
$ svn copy svn://asteasolutions.net/sophie2-repo/trunk \ svn://asteasolutions.net/sophie-jr/tags/m??-??? \ -m "Comment." Committed revision 351.
Here m??-??? stands for the milestone and its name for example m01-pre1.
After the copy completes, the new m??-??? directory is forever a snapshot of how the project looked in the HEAD revision at the time you made the copy. Of course you might want to be more precise about exactly which revision you copy, in case somebody else may have committed changes to the project when you weren't looking. So if you know that revision 350 of /sophie2-repo/trunk is exactly the snapshot you want, you can specify it by passing -r 350 to the svn copy command. In Subversion, there's no difference between a tag and a branch. Both are just ordinary directories that are created by copying. Just as with branches, the only reason a copied directory is a “tag” is because humans have decided to treat it that way: as long as nobody ever commits to the directory, it forever remains a snapshot. If people start committing to it, it becomes a branch.
- How to create a tag on Windows with TortoiseSVN:
- Update first.
- Go to "trunk" folder in your local repository
- Right click on it
- TortoiseSVN -> Branch/tag
- Dialog window appears. Now instead of svn://asteasolutions.net/sophie2-repo/trunk (or svn://asteasolutions.net/sophie-jr/trunk) use svn://asteasolutions.net/sophie2-repo/tags/m??-??? (or svn://asteasolutions.net/sophie-jr/tags/m??-???). Here m??-??? stands for the milestone and its name for example m01-pre1.
- It is obligatory to write a comment when you commit.
- Tags must be created at the end of each iteration when the work is frozen.
Committing rules:
- Always write a comment which task(s) affects your commit (in other words which task you are working on).
- Write the id and the name of the task related to your commit at the end of the comment.
- When you commit code be sure that it is written following the code standards.
- Committing without a comment is absolutely impermissible (that is valid even when committing only a daily report).
Implementation
- Warned people who committed without comments that this is forbidden
- Created REPO_MAINTENANCE
- Applied the structure and content of design in REPO_MAINTENANCE
- Created tag called m02-pre2
Testing
Comments
(Write comments for this or later revisions here.)