Jump to content

Historical impact of Repo refactoring


wyattetal

Recommended Posts

What impact does repo refactoring have on change histories of a repo's contents?

 

Case 1: Break off a portion of a repo into a different repo to which the first will xlink moving forward.

Case 2: Combine two repos into the same repo.

 

In both of the above, will the complete change histories be available in the result, or do these operations equate in any way to a "blank slate" with regard to change histories of the contents? Put in simpler terms, what is the "information loss" cost of the two cases above?

 

Link to comment
Share on other sites

It will depend. Let me share how to I would perform both operations keeping the history.

 

1. Split repo.

 

Replicate the repository branches you are interested and then prune at the destination repo those files you are not interested in.

You'll preserve history but the repo size is going to be the same as the original one. So you duplicate your repos size.

 

2. Combine.

 

Replicate (pull) from the other repository the branches you need.

You'll get two heads, at least, for the main branch. Get the two heads merged and that's all.

Link to comment
Share on other sites

  • 4 months later...

1. Split Repo:

Can you give me a bit more information about how the replication approach works?

I have a repo that I want to break down into (moving forward) two independent repos.

However, I want the file history information retained.

Based on your suggestion, and the documentation I found at 

https://www.plasticscm.com/documentation/distributed/plastic-scm-version-control-distributed-guide.shtml,

I did the following:

* Create new (empty) repo.

* (On the branches tab) Select the /main branch, since this encompasses the entire history

* Select Push this Branch

* Specify my server and the NewRepo, specify Copy

 

The push dialog says "100% Finished with Errors", but the summary is blank.

There do not appear to be any items in the New Repo.

 

I have also repeated the steps above using a branch that I created today off of /Mains latest changeset.

Same result.

 

What am I doing wrong?

Link to comment
Share on other sites

Hi!

 

do you get any error message before the report?

 

Can you try the same operation from the command line? It will give us more information.

 

It works like this:

cm replicate /main@project1@remoteserver:8087 projectx@myserver:8087 --stack
Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...