Commit Graph

58 Commits

Author SHA1 Message Date
Toshi MARUYAMA 38ba617f99 Rails3: replace deprecated 'validate_on_create' to declared validation method at Repository model.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@6717 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-08-29 05:48:11 +00:00
Toshi MARUYAMA 5cfc42982b scm: return nil at model default_branch and override at git model (#8458, #6713).
Redmine Git and Mercurial adapter support *branches*.
Mercurial default branch is *dafault*.
But, it is popular to show all revisions on the top page for Mercurial GUI.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@6130 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-06-30 03:46:32 +00:00
Toshi MARUYAMA ee2236f5bd scm: catch all exceptions to get scm command version in repository model (#8510).
If scm command does not exist,
Linux jruby 1.6.2 (ruby-1.8.7-p330) raises java.io.IOException in production environment.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@5999 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-06-03 09:54:57 +00:00
Toshi MARUYAMA fa94e86d43 scm: add exception of fetching revisions error in repository model (#5357, #2799, #4741, #8030).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@5899 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-05-25 11:33:36 +00:00
Toshi MARUYAMA d65c3d438d scm: git: show only filename and filesize if setting of reporting last commit is disable (#8365, #7047).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@5775 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-05-13 03:55:21 +00:00
Toshi MARUYAMA 4ee79a60ef scm: add a repository model method "merge_extra_info()" to merge "extra_info" serializing hash yaml (#7146, #7047).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@5766 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-05-12 23:58:38 +00:00
Toshi MARUYAMA 30aecd5e25 scm: add "extra_info" column to repositories table and set serialize (#7146, #7047).
This column is for specific SCM.
Git 7 days problem (#7146) can not resolve unless storing branches info in database.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@5762 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-05-12 17:29:18 +00:00
Toshi MARUYAMA fbdbdf96fe scm: code clean up repository model.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@5653 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-05-05 07:30:22 +00:00
Toshi MARUYAMA 86d9ea32db scm: code clean up repository model.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@5647 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-05-05 01:30:24 +00:00
Toshi MARUYAMA bb929f4f75 scm: use i18n string at commit log encoding setting (#1735).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@5519 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-04-23 03:34:43 +00:00
Toshi MARUYAMA bae1763a09 scm: set supporting directory revisions or not at scm level.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@5144 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-03-16 00:50:11 +00:00
Toshi MARUYAMA de5c337df2 scm: set supporting all revisions or not at scm level.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@5143 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-03-16 00:49:50 +00:00
Toshi MARUYAMA 5f5dec16f2 scm: add feature of per project repository log encoding setting (#1735).
Subversion, Mercurial and Git supports UTF-8 log.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4982 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-03-01 10:27:30 +00:00
Toshi MARUYAMA 06f078a813 scm: ignore log encoding setting in Subversion and Mercurial (#7597).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4962 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-02-28 12:09:32 +00:00
Jean-Philippe Lang a78d565959 Adds support for SCM/LDAP passwords encryption in the database (#7411).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4950 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-02-26 13:09:25 +00:00
Toshi MARUYAMA 9937ac677f scm: update adapter initialize() to use path encoding (#2664, #2274).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4941 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-02-24 05:58:59 +00:00
Toshi MARUYAMA a092f5e0b9 scm: catch exception of getting command and version in model (#4273).
If command does not exist, Windows raises exception in shellout().
Linux does not raise exception.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4882 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-02-19 01:11:48 +00:00
Toshi MARUYAMA 60d80653ba scm: catch CommandFailed during bulk Repository.fetch_changesets (#4455).
Contributed by Yuya Nishihara.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4824 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-02-15 02:12:19 +00:00
Toshi MARUYAMA cc4e8fe0d6 scm: add scm command and version methods at repository models (#4273).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4822 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-02-14 08:45:34 +00:00
Toshi MARUYAMA acb0d96617 scm: use #blank? instead of #nil? || #empty? at Repository#find_changeset_by_name(name) (#7307).
Referring r4711.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4712 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-01-14 22:51:12 +00:00
Toshi MARUYAMA 98b3a50657 scm: fix error on revision page for empty revision (#7307).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4703 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-01-13 12:04:30 +00:00
Toshi MARUYAMA ebb19c5863 scm: changing two revision diff text at SCM adapter level (#3724).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4698 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-01-11 16:04:07 +00:00
Jean-Philippe Lang 3d393a5711 Memorize commit authors to speed up changesets loading.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3472 e93f8b46-1217-0410-a6f0-8f06a7374b81
2010-02-21 14:42:45 +00:00
Jean-Philippe Lang d04d3f181a Fixed: Repository.fetch_changesets tries to fetch changesets for archived projects (#4782).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3402 e93f8b46-1217-0410-a6f0-8f06a7374b81
2010-02-09 18:42:42 +00:00
Jean-Philippe Lang 4e811bebd1 Fixes Repository#find_changeset_by_name with PostgreSQL (#3937).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2903 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-10-02 14:49:38 +00:00
Jean-Philippe Lang 30ad78e57d Fixed: RepositoriesController#revision may show wrong revision (#3779).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2898 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-09-20 15:20:22 +00:00
Jean-Philippe Lang e10577e9ed SCM:
* Fixes file log for non-Git repositories (Repository#latest_changesets ignores path argument)
* No longer used Repository#changesets_for_path method removed

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2844 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-08-17 16:32:24 +00:00
Jean-Philippe Lang 6fb80efdae Fixes argument in Repository#latest_changesets.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2842 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-08-17 14:12:51 +00:00
Eric Davis c28b044d68 Added branch and tag support to the git repository viewer. (#1406)
Many thanks to Adam Soltys and everyone else who tested this patch.

* Updated git test repository so it has a branch with some differences from the master branch
* Moved redmine diff class into a module so as not to clash with diff-lcs gem which is required by grit
* Find changesets from all branches, not just master
* Got revision browsing working
* Got file actions working properly
* Allow browsing by short form of commit identifier
* Added a method to retrieve repository branches
* Allow browsing by branch names as well as commit numbers
* Handle the case where a git repository has no master branch
* Expand revision box and handle finding revisions by first 8 characters
* Added branches dropdown to repository show page
* Combined repository browse and show into a single action.  Moved branch/revision navigation into a partial.
* Renamed partial navigation -> breadcrumbs
* Made it so latest revisions list uses branch and path context
* Preserve current path when changing branch or revision
* Perform slightly more graceful error handling in the case of invalid repository URLs
* Allow branch names to contain periods
* Allow dashes in branch names
* Sort branches by name
* Adding tags dropdown
* Need to disable both branches and tags dropdowns before submitting revision form
* Support underscores in revision (branch/tag) names
* Making file history sensitive to current branch/tag/revision, adding common navigation to changes page
* Updated translation files to include labels for 'branch', 'tag', and 'view all revisions'
* Reenable fields after submit so they don't look disabled and don't stay disabled on browser back button
* Instead of dashes just use empty string for default dropdown value
* Individual entry views now sport the upgraded revision navigation
* Don't display dropdowns with no entries
* Consider all revisions when doing initial load
* Fixed bug grabbing changesets.  Thanks to Bernhard Furtmueller for catching.
* Always check the entire log to find new revisions, rather than trying to go forward from the latest known one
* Added some cleverness to avoid selecting the whole changesets table any time someone views the repository root
* File copies and renames being detected properly
* Return gracefully if no revisions are found in the git log
* Applied patch from Babar Le Lapin to improve Windows compatibility

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2840 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-08-15 22:41:40 +00:00
Jean-Philippe Lang 3704653c7a Removes hardcoded table names in Repository#clear_changesets.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2715 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-05-08 08:05:45 +00:00
Jean-Philippe Lang fe28193e4e Merged Rails 2.2 branch. Redmine now requires Rails 2.2.2.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2493 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-02-21 11:04:50 +00:00
Jean-Philippe Lang ab5e07e83e Adds a setting to limit the number of revisions displayed on a repository file log (default=100).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2350 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-02-01 19:54:50 +00:00
Jean-Philippe Lang e8d0c26e43 Eager-load users.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2009 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-11-11 12:50:11 +00:00
Jean-Philippe Lang 79c33bbc83 Maps repository users to Redmine users (#1383).
Users with same username or email are automatically mapped. Mapping can be manually adjusted in repository settings. Multiple usernames can be mapped to the same Redmine user.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2006 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-11-10 18:59:06 +00:00
Jean-Philippe Lang 4b9df2eac7 Fixes Repository#clear_changesets.
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1783 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-09-04 19:35:08 +00:00
Jean-Philippe Lang fc07ba2a99 Clear changesets and changes with raw sql when deleting a repository (#1627).
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1666 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-07-13 21:55:13 +00:00
Jean-Philippe Lang 12fbd06c02 Display svn properties in the browser, svn >= 1.5.0 only (#1581).
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1627 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-07-05 08:59:04 +00:00
Jean-Philippe Lang ca6e69ec24 Fixed: view file at given revision with CVS.
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1553 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-06-15 15:47:28 +00:00
Jean-Philippe Lang ec0525d497 Move unified diff parser out of the scm abstract adapter so it can be reused for viewing attached diffs (#1403).
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1513 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-06-08 16:28:42 +00:00
Jean-Philippe Lang dfe62d7f51 Ability to disable unused SCM adapters in application settings.
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1507 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-06-08 14:59:26 +00:00
Jean-Philippe Lang 193b2450f4 Fixed: View differences for individual file of a changeset fails if the subversion repository URL doesn't point to the repository root (#1209, #1262, #1275).
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1446 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-05-24 17:58:34 +00:00
Jean-Philippe Lang 4957752d12 Strip repository urls (closes #852).
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1248 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-03-14 18:59:10 +00:00
Jean-Philippe Lang 3a9b0988c7 Merged Git support branch (r1200 to r1226).
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1236 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-03-12 20:28:49 +00:00
Jean-Philippe Lang 8c65cc4712 Added Annotate/Blame view for Subversion, CVS and Mercurial repositories.
git-svn-id: http://redmine.rubyforge.org/svn/trunk@947 e93f8b46-1217-0410-a6f0-8f06a7374b81
2007-12-02 20:58:02 +00:00
Jean-Philippe Lang 9ce5713ee4 Fixed: log is not displayed when browsing a copy in a svn repository.
git-svn-id: http://redmine.rubyforge.org/svn/trunk@843 e93f8b46-1217-0410-a6f0-8f06a7374b81
2007-10-15 18:41:27 +00:00
Jean-Philippe Lang ba1b857197 Added Darcs basic support.
Files in the repository can not be viewed or downloaded since Darcs doesn't support cat-like command.

git-svn-id: http://redmine.rubyforge.org/svn/trunk@573 e93f8b46-1217-0410-a6f0-8f06a7374b81
2007-06-24 19:30:38 +00:00
Jean-Philippe Lang 438161ad1f Added basic support for CVS and Mercurial SCMs.
Browsing, changesets fetching and diff viewing are implemented.
Only tested with local repositories.

Thanks to Ralph Vater for CVS specific code.

git-svn-id: http://redmine.rubyforge.org/svn/trunk@559 e93f8b46-1217-0410-a6f0-8f06a7374b81
2007-06-12 20:12:05 +00:00
Jean-Philippe Lang bb1fccb7b7 Fixed: performance issue on RepositoriesController#revisions when a changeset has a great number of changes (eg. 100,000).
Also added pagination for changes on changeset details view.

git-svn-id: http://redmine.rubyforge.org/svn/trunk@535 e93f8b46-1217-0410-a6f0-8f06a7374b81
2007-05-15 21:32:36 +00:00
Jean-Philippe Lang 52547466f0 Fixed: 10342 Creation of Schema in Oracle
Comment is a reserved keyword for Oracle. The five 'Comment' columns are renamed to 'Commments'.
Migration scripts were modified to let oracle users create the database. For the others, migration 41 will rename the columns (only if columns have the 'old' name).
Fixed also a few oracle specific issues.

Note: currently (in Rails 1.2.3), there's bug in Rails oracle adapter. See: http://dev.rubyonrails.org/ticket/7344
Attached patch is required for redMine to work properly.


git-svn-id: http://redmine.rubyforge.org/svn/trunk@479 e93f8b46-1217-0410-a6f0-8f06a7374b81
2007-04-25 15:06:20 +00:00
Jean-Philippe Lang 941a240535 Commit messages are now scanned for referenced or fixed issue IDs.
Keywords and the status to apply to fixed issues can be defined in Admin -> Settings.

Default keywords:
- for referencing issues: refs, references, IssueID
- for fixing issues: fixes,closes
There's no default status defined for fixed issue. You'll have to specify it if you want to enable auto closure of issues.

Example of a working commit message: "This commit references #1, #2 and fixes #3"

git-svn-id: http://redmine.rubyforge.org/svn/trunk@473 e93f8b46-1217-0410-a6f0-8f06a7374b81
2007-04-24 13:57:27 +00:00