Re: Csetprune Existing Repositories

"Brendan Heading" <[email protected]> Wed, 31 Aug 2005 15:15:42 +0100
Newsgroups gmane.comp.version-control.bitkeeper.user
Message-ID <[email protected]>
Bradford Beckmann writes: 

> I used the command 'bk csetprune' to permanently remove several 100 MBs of
> files that was accidentally checked into a bk repository.  Most of the
> files were initially deleted by the 'bk rm' command, but all that did was
> move the files to the BitKeeper/deleted/SCCS directory. 

bk rm is essentially just a file rename. It's done that way so that you can 
recover earlier versions of the history of the tree. The idea is that you 
never lose history. 

> The csetprune was
> successful in significantly reducing the size of the parent repository,
> however, it appears that now all child repositories can no longer pull
> from the parent.

csetprune is the wrong way to address this problem. The right way is to use 
"bk gone". 

Unfortunately csetprune changes the identity of the repository so it's no 
longer possible to push/pull. 

> Are all child repositories permanently disjointed from the parent
> repository?  

Yes, they are now. If you backed up your repository before you did the 
csetprune, the best thing would be to restore the backup and use "bk gone" 
on the offending stuff. 

> Is there any way to resync the child repositories with the
> parent?

Nope, other than using GNU patches. (bk import/export -tpatch) 

Brendan