Matt Burke
e17136e524
Use a context object instead of feeding back the fetchresult.
2014-12-27 11:53:22 -05:00
Matt Burke
64ba962e9e
less churn: FindMergedRemoteAndFetch.
2014-12-27 11:37:22 -05:00
Matt Burke
7d5bd79d02
Add an extension method overload.
2014-12-27 11:33:03 -05:00
Philippe Miossec
f2d713e9f6
Refacto: Store rename data in FetchResult and pass it to the fetch of the next branch!
2014-12-26 19:32:03 +01:00
Philippe Miossec
aa323f0057
refactoring
2014-12-26 19:28:06 +01:00
Philippe Miossec
73f594485c
Manage case where the first changeset of a clone is a rename changeset
2014-12-26 19:28:06 +01:00
Philippe Miossec
23f3da86bc
Process changeset when with new branch (instead with old one)
...
Ignore rename changeset when discovered because
we want to process it as a changeset of the renamed branch.
This way, if changes are made (other than the branch renaming),
there will be fetched in TfsHelperBase.GetChangesets()!
Before that change, there would have been not fetched
because the tfs path was the one of the old branch but
the changes belong to the new renamed branch path!
2014-12-26 19:28:05 +01:00
Philippe Miossec
62147ffc7d
Detecting an branch rename changeset
2014-12-26 19:28:04 +01:00
Philippe Miossec
322c55dbb4
Being able to clone sub branches and use of --with-branches option
...
We are now, not obliged to clone the trunk to use the `--with-branches` option!
That way the sub branch will be cloned (with all the branches merged into it)
and all its children branches will be initialized after.
There is no more technical reasons that prevent cloning a sub branch...
Solve https://groups.google.com/forum/#!topic/git-tfs-dev/XndbEXRcx1M
2014-12-26 19:25:32 +01:00
Philippe Miossec
8b4f34c616
Prevent throwing of an Exception when reading missing git config key
2014-12-07 19:02:03 +01:00
Dave Hanna
c6eadbb477
Handle error case where no merge info is returned by QueryMerges
2014-11-16 18:13:21 +01:00
Philippe Miossec
1b42dc93c1
Being able to clone TFS path "$/"
2014-10-27 00:58:52 +01:00
Philippe Miossec
ebe97e7472
When no value found in the git config file, use the default one specified
2014-10-02 23:41:22 +02:00
Matt Burke
f66d439707
Replace one-off BatchSize with a pattern for command-line + git config values.
2014-10-02 13:42:42 +02:00
Philippe Miossec
e956d1d340
Expose a BatchSize option...
...
Since 21f36fa47c , tfs changesets are
fetched by batches of 100 changesets (instead of all at once)
to better support big history when cloning (and use less memory).
This option let the user specify the size of the batch
(because perhaps even 100 is too big for some big repositories).
Values accepted:
x < 0 => Only one batch with ALL the changesets
x == 0 => default value of 100
x > 0 => batches of x changesets
2014-10-02 13:42:41 +02:00
Matt Burke
158d16b758
Merge pull request #636 from spraints/ignore-unshelve-errors
...
Add the option to ignore unshelve errors
2014-09-25 10:17:46 -04:00
Matt Burke
ba5add04ab
unshelve --force ignores errors while Geting files.
2014-09-24 10:01:29 -04:00
Philippe Miossec
9851568ac7
Change call to CreateCommit() because used api is obsolete
2014-08-06 10:27:28 +02:00
Philippe Miossec
c685a27aea
Use the good Signature
2014-08-06 09:50:55 +02:00
Philippe Miossec
2a60c57f14
Update libgit2sharp to v0.18.1
2014-08-04 13:45:04 +02:00
Philippe Miossec
ba6581a2d9
Drop VsCommon in namespace
...
(because that's an internal namespace)
2014-07-30 10:39:36 +02:00
Matt Burke
f9c2485457
Refactor.
2014-07-28 10:02:35 -04:00
Matt Burke
95effc1d9a
Let unshelve continue after errors.
2014-07-28 09:49:22 -04:00
Philippe Miossec
cf5ca76d33
TfsPlugin is the same for all versions...
2014-07-15 17:34:47 +02:00
Philippe Miossec
235d516d77
Better handling big history by fetching changesets by lots
...
of 100 max (and creating commits in the same time)
before fetching another lot if needed....
& little refactoring
2014-07-13 21:53:10 +02:00
Philippe Miossec
3d300bc494
Querying history bounded when knowing the last changeset id wished
2014-07-13 21:47:39 +02:00
Philippe Miossec
a1069ea609
Merge pull request #625 from pmiossec/perfs_get_last_changeset_id
...
Perfs get last changeset id
2014-07-10 15:43:04 +02:00
Philippe Miossec
4e638770d6
Merge pull request #618 from pmiossec/shorten_workspace_path
...
Shorten workspace to mitigate ntfs path length limit
2014-07-10 15:36:03 +02:00
Philippe Miossec
0225dd5ea2
Add checkout command
...
git tfs checkout changesetId [-b=branch_name]
ex: git-tfs checkout 2365
git-tfs checkout 2365 -b=bugfix_2365
Solve #563
2014-07-10 14:29:58 +02:00
Philippe Miossec
b9e253749a
Shorten workspace to mitigate ntfs path length limit
...
(See https://github.com/git-tfs/git-tfs/blob/master/doc/Set-custom-workspace.md
for problem description)
Now that the ".git\tfs\RemoteId\" directory is only used
to create a "workspace" directory and is cleaned after
each command run, we could instead use a unique and
common directory with a shorter path (".git\~w")!
This way we are less likely to hit the ntfs path length limit
because we are not dependent of the remote id. If we
succesfully clone the trunk, we will be able to fetch all the branches
(except if there is files deeper needless to say)
2014-07-10 13:36:41 +02:00
Philippe Miossec
992a829c8d
refactoring
2014-07-10 13:35:45 +02:00
Philippe Miossec
cf35626f71
Don't retrieve all changes when getting just last changeset id
2014-07-10 13:35:44 +02:00
Arkady Shapkin
6b6dcde978
branch init support initializing by specifying git branch or git remote
2014-07-05 13:50:23 +02:00
Arkady Shapkin
129e6484fc
OmittedParentBranch set when IgnoreBranches == true
2014-07-05 13:50:21 +02:00
Arkady Shapkin
5c30b7ec5d
Option added to ignore not initialized branches on fetch
2014-07-05 13:50:20 +02:00
Arkady Shapkin
e69357280f
InitBranch support fetching parent branch
2014-07-05 13:50:18 +02:00
Arkady Shapkin
fe7c3d612b
FetchWithMerge trace improved
2014-07-05 13:50:16 +02:00
Arkady Shapkin
00ae6d46c1
Apply() moved after ProcessMergeChangeset()
2014-07-05 13:50:15 +02:00
Arkady Shapkin
74abd9e30b
Check parent branch history only before current branch changeset
2014-07-05 13:50:14 +02:00
Arkady Shapkin
8ed59efddf
RootBranch DebbuggerDisplay attribute added
2014-07-05 13:50:10 +02:00
Arkady Shapkin
9b4c538b41
ParseEntries() called only when really needed
2014-07-05 13:50:08 +02:00
Arkady Shapkin
591323c90d
Renamed branch handling improved
2014-07-05 13:50:03 +02:00
Philippe Miossec
b1f79105f1
Managing branch renaming in FindTfsRemoteOfChangeset()
2014-07-05 13:50:02 +02:00
Arkady Shapkin
0895882e6c
Parent branch fetching fixed
2014-07-05 13:50:00 +02:00
Philippe Miossec
ff819a2477
try to intialize the parent branch when commit not found...
2014-07-05 13:48:27 +02:00
Philippe Miossec
8ca3abcada
FindTfsRemoteOfChangeset : Add message when not finding commit
2014-07-05 13:48:25 +02:00
Arkady Shapkin
7f4ce2d2a2
FindMergedRemoteAndFetch crash fixed
2014-07-05 13:48:22 +02:00
Philippe Miossec
88dfce4638
refactoring / cleaning
2014-07-05 13:48:19 +02:00
Arkady Shapkin
fb6e78c11a
FetchWithMerge method refactored
2014-07-05 13:48:13 +02:00
Philippe Miossec
971abcb3dc
Add an option "-ignore-branches" to ignore merged branch when fetching in merge changeset
...
It correspond to the old way git-tfs worked!
2014-07-05 13:48:09 +02:00