Commit Graph

30 Commits

Author SHA1 Message Date
Patrick Mezard
e32ff65d7c pushmod: pass SubversionRepo directly to commit() 2009-07-18 20:44:33 -05:00
Patrick Mezard
15296e29f4 Extend svnrepos with SubversionRepo and SVNMeta
SubversionRepo and SVNMeta are now hidden behind svnremoterepo and
svnlocalrepo. It unifies the way svn credentials are read from the command line
and configuration file, at the cost of import cycle between svnrepo and
wrappers. It is currently not a big deal thanks to demandimport.
2009-07-18 20:44:33 -05:00
Patrick Mezard
8f7a6948c6 Unify svn credentials handling as config entries
It has 2 benefits:
- It generalizes the use of hgsubversion.username/password initiated in
  push/pull.
- Command line options are no longer need to create SubversionRepo, so we can
  move this out of command handling code.
2009-07-18 20:44:33 -05:00
Patrick Mezard
4531a85f02 wrappers: make push aborts if uncommitted changes 2009-07-18 20:44:33 -05:00
Dirkjan Ochtman
3f9bc70ee4 wrappers: save tbdelta in one place for both stupid and replay 2009-06-16 13:59:03 +02:00
Dirkjan Ochtman
ca23830de1 move remaining cmdutils into util 2009-06-16 13:33:47 +02:00
Dirkjan Ochtman
12a485b0c2 pushmod: split push functions out into separate module 2009-06-16 09:12:20 +02:00
Dirkjan Ochtman
bceaad1289 replay: start new replay module that has the relevant functions 2009-06-16 08:43:12 +02:00
Dirkjan Ochtman
d4c51cbdd5 consolidate metadata calls from stupid and replay code 2009-06-15 16:10:24 +02:00
Dirkjan Ochtman
7bbaf3c863 inline describe_revision(), use custom termwidth 2009-06-15 22:31:15 +02:00
Dirkjan Ochtman
0184b19f7d imported patch import-cleanup 2009-06-11 18:57:55 +02:00
Dirkjan Ochtman
b0877c363c save metadata from one place 2009-06-11 18:48:43 +02:00
Dirkjan Ochtman
426eb3fef6 invert the svnmeta/editor relationship 2009-06-11 18:49:52 +02:00
Dirkjan Ochtman
38c737885e svnmeta: move revmap methods, make last_known_revision() more efficient 2009-06-11 10:32:32 +02:00
Dirkjan Ochtman
0cfc80a3e2 split parts of HgChangeReceiver out into an SVNMeta class
Less obvious things:

- my reordering in the previous was incomplete
- _branch_for_path() was unused, so I removed it
- _svnpath() was removed in favor of identical _remotename()
- I've checked "no cover" bits manually
2009-06-11 18:56:35 +02:00
Dirkjan Ochtman
7d8640b60a add a function to generate svn_commit_hashes 2009-06-10 13:57:04 +02:00
Dirkjan Ochtman
23dd79e66d editor: simplify HgChangeReceiver constructor signature 2009-06-10 13:32:10 +02:00
Dirkjan Ochtman
cd0491f9d5 add a working incoming wrapper command 2009-06-10 14:55:26 +02:00
Dirkjan Ochtman
3a67c8f4bb uisetup: use a single loop/abstraction for wrapping all the commands 2009-06-10 12:06:31 +02:00
Dirkjan Ochtman
105e824d6f uisetup: move clone and push/pull wrappers to wrappers module 2009-06-10 11:35:59 +02:00
Augie Fackler
2169476b47 wrappers: Python 2.4 compat. 2009-06-01 11:50:12 -05:00
Dirkjan Ochtman
ce7d6dfcca Generate separate data structure containing revision's tags/branches changes. 2009-05-29 17:33:52 +02:00
Dirkjan Ochtman
2d6b72dfd0 Simplify pulling revs a bit, unify stupid/replay interfaces. 2009-05-28 10:57:09 +02:00
Augie Fackler
c4ba46f1f0 push: don't refuse to push if it looks like we haven't pulled all changes.
We can't rely on the most-recent change number matching our most-recent
change number because there can be changes in svn that produce no
corresponding hg changeset.
2009-05-27 21:40:58 -05:00
Dan Villiom Podlaski Christiansen
4464869581 Remove the 'outgoing' wrapper, and use the Mercurial infrastructure instead. 2009-05-22 15:12:31 +02:00
Dan Villiom Podlaski Christiansen
3019e64c19 improve reliability of Subversion checks.
Use the presence of the UUID file for recognising a Subversion-enabled
repository locally, and the 'subversion' capability in for recognising
them wrappers.outgoing() remotely.0
2009-05-20 21:49:01 +02:00
Dan Villiom Podlaski Christiansen
ce861ee5d6 Mention what failed when given a non-numeric revision to clone/pull.
Replace test_branch_tip_update_to_branch_anchor with test_branch_pull_anchor
2009-05-20 21:15:47 +02:00
Dan Villiom Podlaski Christiansen
bb2a7bf94d Use fallbacks in the wrappers for Subversion support, instead of prefixes.
The change only applies to the ambiguous URL schemes: file, http and
https. The others - svn+ssh and svn - behave the same as previously.

For http and https, the wrapping is implemented in 'svnrepo.py': Only
when the attempt to create a httprepo instance fails, will the URL
be considered for Subversion URL.

For file, the ambiguity is treated much like the Mercurial core
distinguishes bundle and directories. In this case, a directory that
looks like a Subversion repository will *not* be considered for a
Mercurial clone.

Tthe command lines are more similar to before this refactor. The only
option added to push & pull is --stupid; others are only added to
clone. Any of these options specified to clone will be added to the
generated '.hgrc'.

Also, the -r/--rev option now works for clone & push.
2009-05-20 18:38:01 +02:00
Dan Villiom Podlaski Christiansen
60bc888ea1 wrappers: remove unused clone() function.
Also, tweaked a few comments and status messages, and added some whitespace.
2009-05-20 18:11:55 +02:00
Augie Fackler
94a7ecbe68 Reorganize to have a more conventional module structure.
This means that hgsubversion now uses absolute imports instead of
relative ones, which makes the tests more reliable.
2009-05-13 21:39:39 -05:00