Commit Graph

72 Commits

Author SHA1 Message Date
Thomas Keller
7ff6f09f67 We can actually differentiate between copies and renames in Hg, so lets
add support for another change type, 'copies'. The previous implementation
for Hg was also slightly flawed in the way that it mixed sources with
targets.
2011-06-10 01:34:33 +02:00
Thomas Keller
80313c88c8 Properly reverse-sort git's tag list again; the rsort on the original output
of the command looked bogus: since each tag ref is prefixed by an iso date and
since commit 94da55d1 by hash, the whole string was of course sorted by this
date and later hash, but not the tag name. This should now make more sense.
2011-06-02 00:38:14 +02:00
Thomas Keller
82bb18fe10 Merge branch 'release-1.1' into develop 2011-05-26 10:51:16 +02:00
William MARTIN
94da55d15e Fix tags extraction from git repository (issue 675) 2011-05-26 09:56:04 +02:00
William MARTIN
5ea4b02205 Update copyrigt 2011-04-02 21:37:07 +02:00
Thomas Keller
366d278182 Ignore "bad usage" error code in case git tag doesn't know of the --contains option. 2011-03-17 23:12:27 +01:00
Loïc d'Anterroches
5f008a14f5 ReFixed in an ugly way the non support of the git --contains option. 2011-03-17 09:28:43 +01:00
Loïc d'Anterroches
21a8c281ec Fixed in an ugly way the non support of the git --contains option. 2011-03-17 09:22:46 +01:00
Patrick Georgi
baa88412b9 Rewrite the diff parser and reduce the memory footprint.
The diff parser code was rewritten for clarity and speed and now handles
a couple of ugly cornercases, like SVN's property change output and single
change chunks, much better. Since the path parsing was unified as well,
the SCM interface gained a new method `getPathStripLevel()` which determines
how many path components need to be shoven off a file name for the SCM
to form a valid path in the workspace (similar to patch(1)'s --strip option).
Fixes issue 627. Automated tests follow.
2011-03-16 23:50:41 +01:00
Thomas Keller
6fb9b72e22 Use git tag --contains REV for the IDF_Scm::inTags() implementation.
This works similar to git branch --contains REV; additionally give the
revision id and not some possibly symbolic name to the inBranches()
call when we determine the branches a commit is in.
2011-03-16 23:03:36 +01:00
William MARTIN
bb4fa7ca2f Fix issue 629 : Git commit view is missing the branch 2011-03-11 11:38:04 +01:00
Patrick Georgi
98f4eac82a Merge branch 'multiple-mails' into develop 2011-03-03 14:12:03 +01:00
William MARTIN
cc89a7e6f8 Add support of renamed file for IDF_Scm_Git::getchanges() 2011-02-25 11:10:10 +01:00
William MARTIN
f0ac256ff6 Implementation of IDF_Scm_Git::getChanges() 2011-02-24 15:21:51 +01:00
Patrick Georgi
38e6e4f8d3 Use all registered email addresses to map Scm users to IDF users. 2011-02-21 10:57:36 +01:00
Loïc d'Anterroches
116a7e34db Added the display of the commit parents in the changelog view.
The old commits will not have the parents displayed as already cached in the DB, but the new will get them.
2011-01-24 14:20:33 +01:00
Loïc d'Anterroches
a489cb15b5 Added the display of the merge history in a commit view. 2011-01-20 10:25:41 +01:00
William MARTIN
439f1fefe2 Fix issue 588 : Redirect connected user to the anonymous url if they don't have register a SSH Key for GIT 2011-01-06 11:13:29 +01:00
Thomas Keller
39c29dbe10 Started on issue 544, extended commit details
* Scm.php: new SCM method "getChanges" which returns all available
  change information grouped by type
* Monotone.php: implement getChanges via get_revision
* <other scms>: rename "changes" member for getCommit to "diff" which
  matches better
* Source.php: query the commit's changes and set them in the template
* commit.html: render the changes, type-by-type. Link to the tree or
  the individual diff if applicable
* styles.css: some initial style sheet work
2010-12-08 01:48:26 +01:00
Thomas Keller
5b41fe3167 I promise I keep my fingers off git stuff now (a fix for issue 572) 2010-12-01 11:19:13 +01:00
Thomas Keller
35e670a1ab The data structure is already a stdClass object, so add a property,
not a key (partially fixes issue 568)
2010-11-17 19:08:41 +01:00
Thomas Keller
70e8d12420 Output the branch a particular commit is on; this is easy for
mercurial and monotone, but slightly harder till impossible to
do properly for git and svn. Please review and eventually adapt
the code to make it work better (partially fixes issue 450)
2010-11-17 01:53:17 +01:00
Thomas Keller
fe001abd26 Rework the way IDF's SCM interface provides downloadable snapshots.
Instead of returning a command which gets executed and which should
pass through / stream its output data to the client, we're just
returning an instance of Pluf_HTTP_Response. This is needed, because
some SCMs, most noticable monotone, have no locally executable command
to provide a snapshot archive (and probably never will for our kind
of setup).

We therefor added a little BSD-licensed class "ZipArchive" which allows
the creation of pkzip-compatible archives on the fly by letting it eat
the file contents directly feed from the (remote) stdio instance.
Download performance is ok and lies between 15K/s and 110K/s, but at
least we do no longer block the browser while we pre-generate the zip
file server-side.

Thanks to Patrick Georgi for all his work!
2010-10-30 21:52:40 +00:00
Thomas Keller
21cdf60c31 Introduce a more subtle concept of validity when it comes to revision
indentifiers in IDF - the SCM function isValidRevision has been replaced
by a validateRevision() method which returns one of three states,
valid, invalid or ambiguous.
The source view can then act accordingly and display disambiguate view
for the latter, so the user can select for which revision he actually
wants to execute the requested action. Also, invalid revisions now lead
to another separate view, telling the user that it is invalid / does
not exist and pointing him optionally to the help page where he can read
further how to access his repository to push the first changes into.
(partially resolves issue 525)
2010-09-01 13:13:52 +00:00
Thomas Keller
2ee665ac96 Merge branch 'master' of git://projects.ceondo.com/indefero 2010-06-21 23:23:26 +02:00
Loic d'Anterroches
28ce82c6f6 Improved to sort the Git tags by reverse chronological order. 2010-05-11 09:41:22 +02:00
Thomas Keller
59ad0f5b11 * idf.php-dist: improve the document of the various mtn-related configure options; introduce an option to configure the protocole - separate from the url option, which we now name mtn_remote_host
* IDF_Project: optionally give getSourceAccessUrl() a commit argument, so a particular VCS module can determine a subset of revisions to pull for the specific revision which is browsed
* IDF_Scm_*: add the argument null'd for all VCS; implement a branch lookup for monotone
* tree.html: display the correct branch to clone under each revision tree
2010-05-02 00:56:04 +02:00
Loic d'Anterroches
7b0ece42f0 Fixed to convert in utf-8 earlier in the process. 2010-03-26 20:40:50 +01:00
Loic d'Anterroches
64fb5b3bf0 Fixed issue 402, Project List shows '0 bytes' Repository size on Mac OS X. 2010-02-24 15:06:13 +01:00
Loic d'Anterroches
3a28fe9d28 Fixed ticket 208, added more logging in GitServe and Scm backend. 2010-02-17 21:57:28 +01:00
Loic d'Anterroches
73641a03d5 Fixed issues 368 and 354, access to files with special characters. 2010-01-20 22:33:53 +01:00
Mehdi Kabab
8050463a12 Added ticket 271, support of the Git tags. 2009-11-06 16:12:54 +01:00
Loic d'Anterroches
3c46b7734f Added the ability to use the username of a user to link a git commit. 2009-11-06 15:58:21 +01:00
Loic d'Anterroches
37aa3d8b69 Fixed not to stat the size of a non existing repository. 2009-10-26 21:45:42 +01:00
Loic d'Anterroches
838645463d Remove the PHP 5.3 deprecated split function. 2009-09-24 20:40:22 +02:00
Loic d'Anterroches
25d7a5a776 Fixed issue 286, repository size fails on symlinks. 2009-09-21 09:58:29 +02:00
Loic d'Anterroches
c0dfd6b5dc Fixed issue 180, can't select branches containing / character in git projects. 2009-07-08 13:49:16 +02:00
Loic d'Anterroches
7d6cb22291 Fixed to have a better character encoding detection of the git log. 2009-07-03 10:23:49 +02:00
Loic d'Anterroches
ad17d797b2 Fixed parsing error. 2009-07-02 19:38:52 +02:00
Loic d'Anterroches
2b1a741946 Fixed issue 245, ['idf_exec_cmd_prefix'] configuration variable is not available anymore. 2009-07-02 13:05:43 +02:00
Loic d'Anterroches
fcefbe719f Fixed to better detect a bad commit. 2009-06-24 19:33:16 +02:00
Loic d'Anterroches
6cf4f00f92 Fixed to make the command portable on BSD/Solaris. 2009-06-19 21:37:39 +02:00
Loic d'Anterroches
25e296fbb6 Added the display of the repository size in the source subtab of a project. 2009-06-19 17:31:45 +02:00
Loic d'Anterroches
a15107558c Fixed issue 235, need consistent use of file and fullpath in the SCM backend 2009-06-19 15:51:31 +02:00
Patrick Georgi
88a1bf9c94 Fixed issue 232, repository browser on SVN shows stacktraces 2009-06-08 13:21:03 +02:00
Loic d'Anterroches
d98dda645e Pushed the constructor into the backend implementation. 2009-05-27 23:08:55 +02:00
Loic d'Anterroches
a53c6a1778 Fixes the case of an empty repository again. 2009-05-27 17:04:41 +02:00
Loic d'Anterroches
b75286375e Fixes the case of an empty repository. 2009-05-27 16:59:25 +02:00
Loic d'Anterroches
39699ba723 Fixed to correctly return false on non-existing commits. 2009-05-26 11:28:36 +02:00
Loic d'Anterroches
0fd0c40e89 Fixed to update to use the new method signature. 2009-05-25 15:19:22 +02:00