Edgewall Software

Trac Repositories

Official Subversion repository

Everyone has read access to the Trac Subversion repository located at:

https://svn.edgewall.org/repos/trac/

In addition, see TracDev/SubmittingPatches for instructions on how to create and submit patches.

Example:

$ svn checkout https://svn.edgewall.org/repos/trac/trunk
$ cd trunk
$ emacs
$ svn diff > my_great_patch.diff

Please attach patches to the appropriate ticket for review and merging.

Trac developers who have write permissions on this repository should use HTTPS for the checkout, i.e. https://svn.edgewall.org/repos/trac/.

To become a Trac developer, start to contribute, play well with the other team members and participate to Trac-dev.

Official mirrors

We now have official DVCS mirrors of the Subversion trunk and maintenance branches which are updated after every commit. For anything other than small fixes, it is more convenient to maintain your changes in your own repositories. That way, it will be easier to maintain them as the code base continues to evolve upstream (rebase, MQ, etc.).

Mercurial mirror on bitbucket.org

https://bitbucket.org/edgewall/trac

You can register for a BitBucket account and then "Fork" the above repository, which will create your own trac repository under your account.

Alternatively, you can directly clone the edgewall/trac repository and submit your changes via patches attached to the relevant tickets.

hg clone https://bitbucket.org/edgewall/trac

The mirror contains trunk, all 0.x-stable branches since Trac 0.7 as well as the corresponding tags. To facilitate linking the Mercurial changesets with the corresponding changesets in Subversion, you may want to install the HgSvnUtils Mercurial extension (maintained by RemyBlank). It automatically adds "virtual" tags for every changeset converted from Subversion, containing the SVN revision number:

$ hg glog
o  6997[svn-9975,tip]:6995   20725063f3e2   2010-07-31 14:38 +0000   rblank
|    Merged [9974] from 0.12-stable.
|
| o  6996[svn-9974]:6994   3b48c6d5a06b   2010-07-31 14:37 +0000   rblank
| |    0.12.1dev: Follow-up to [9971], fixed the display of the default repository description.
| |
o |  6995[svn-9973]:6988   fd102216a0af   2010-07-31 14:32 +0000   rblank
| |    Merged [9964:9972] from 0.12-stable.
| |
| o  6994[svn-9972]   39f0644d4995   2010-07-31 14:21 +0000   rblank
| |    0.12.1dev: Fixed the dynamic expansion of directories in the repository browser on IE7.
| |
| o  6993[svn-9971]   2d8e405eb5e8   2010-07-31 11:31 +0000   rblank
| |    0.12-stable: Fixed the display of the description of named repositories when showing the repository root.
| |

This allows easy updating to a given SVN revision, or a comparison to a given SVN revision:

$ hg up svn-9974
9 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg di -r svn-9972
diff --git a/trac/versioncontrol/web_ui/browser.py b/trac/versioncontrol/web_ui/browser.py
--- a/trac/versioncontrol/web_ui/browser.py
+++ b/trac/versioncontrol/web_ui/browser.py
@@ -398,7 +398,7 @@
 
         data = {
             'context': context, 'reponame': reponame, 'repos': repos,
-            'repoinfo': all_repositories.get(reponame),
+            'repoinfo': all_repositories.get(reponame or ''),
             'path': path, 'rev': node and node.rev, 'stickyrev': rev,
             'display_rev': display_rev,
             'created_path': node and node.created_path,

Note that when working with mixed working copies on Windows (i.e. a Subversion working copy which also contains a cloned .hg repository at its root), it can be useful to activate the eol Mercurial extension (see r9979 for details). Otherwise, after an svn update, the files can appear to be modified to hg due to different line endings. This is because the Mercurial mirror has been created on Linux, therefore all the files are stored in LF mode in the repository.

Git mirror on github.com

https://github.com/edgewall/trac

You can either register for a GitHub account and then "Fork" the above repository, which will create your own trac repository under your account.

Alternatively, you can directly clone the edgewall/trac repository and submit your changes via patches attached to the relevant tickets.

git clone https://github.com/edgewall/trac.git

Local repositories for Trac developers

See TracTeam/Repositories.


See also: HowToContribute, TracDev, TracProject

Last modified 2 months ago Last modified on Jul 21, 2016, 8:55:56 PM