All of lore.kernel.org
 help / color / mirror / Atom feed
* bzr->git: keep empty directories
@ 2012-07-14 14:41 Felix Natter
  2012-07-14 22:46 ` David Aguilar
  0 siblings, 1 reply; 3+ messages in thread
From: Felix Natter @ 2012-07-14 14:41 UTC (permalink / raw)
  To: git

hello,

when converting a repo from bzr to git:

mkdir freeplane-git1
cd freeplane-git1
git init .
bzr fast-export --plain --export-marks=../marks.bzr ../trunk/ | git fast-import --export-marks=../marks.git
git checkout

Empty directories are not contained in the git working index. This is
because of the --plain option, which "Excludes metadata to maximise
interoperability" and thus does not support empty directories
(http://doc.bazaar.canonical.com/plugins/en/fastimport-plugin.html).

However, when I use "--no-plain" (which according to above documentation
exports empty directories), git cannot handle it:

$ ./freeplane2git.sh 
Initialized empty Git repository in /home/felix/git/freeplane-git1/.git/
15:56:09 Calculating the revisions to include ...
15:56:09 Starting export of 4290 revisions ...
fatal: This version of fast-import does not support feature commit-properties.
fast-import: dumping crash report to .git/fast_import_crash_3915
bzr: broken pipe

I already tried to hack bzr-fastimport's exporter.py so that it does not
emit commit properties but emits empty directories but i was not
successful.

So is there another way to preserve empty directories or shall I report
a bug on bzr fast-export?

Many thanks in advance!
-- 
Felix Natter

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: bzr->git: keep empty directories
  2012-07-14 14:41 bzr->git: keep empty directories Felix Natter
@ 2012-07-14 22:46 ` David Aguilar
  2012-07-15  4:01   ` Steven Michalske
  0 siblings, 1 reply; 3+ messages in thread
From: David Aguilar @ 2012-07-14 22:46 UTC (permalink / raw)
  To: Felix Natter; +Cc: git

On Sat, Jul 14, 2012 at 7:41 AM, Felix Natter <fnatter@gmx.net> wrote:
> hello,
>
> when converting a repo from bzr to git:
>
> mkdir freeplane-git1
> cd freeplane-git1
> git init .
> bzr fast-export --plain --export-marks=../marks.bzr ../trunk/ | git fast-import --export-marks=../marks.git
> git checkout
>
> Empty directories are not contained in the git working index. This is
> because of the --plain option, which "Excludes metadata to maximise
> interoperability" and thus does not support empty directories
> (http://doc.bazaar.canonical.com/plugins/en/fastimport-plugin.html).
>
> However, when I use "--no-plain" (which according to above documentation
> exports empty directories), git cannot handle it:
>
> $ ./freeplane2git.sh
> Initialized empty Git repository in /home/felix/git/freeplane-git1/.git/
> 15:56:09 Calculating the revisions to include ...
> 15:56:09 Starting export of 4290 revisions ...
> fatal: This version of fast-import does not support feature commit-properties.
> fast-import: dumping crash report to .git/fast_import_crash_3915
> bzr: broken pipe
>
> I already tried to hack bzr-fastimport's exporter.py so that it does not
> emit commit properties but emits empty directories but i was not
> successful.
>
> So is there another way to preserve empty directories or shall I report
> a bug on bzr fast-export?
>
> Many thanks in advance!

I would suggest hacking it to optionally not emit commit properties as step one.

A later enhancement would be to optionally create directories with
empty .gitignore files, or something similar. git really doesn't care
about empty directories.
-- 
David

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: bzr->git: keep empty directories
  2012-07-14 22:46 ` David Aguilar
@ 2012-07-15  4:01   ` Steven Michalske
  0 siblings, 0 replies; 3+ messages in thread
From: Steven Michalske @ 2012-07-15  4:01 UTC (permalink / raw)
  To: David Aguilar; +Cc: Felix Natter, git

Perhaps having a file named something like:

.git_foreign_scm_empty_dir  or some shorter name.

With the contents of the fast importer empty directory info put in there; If any book keeping is needed.

It also looks like you strip out meta-data.
perhaps a file like:

.git_foreign_scm_metadata

We could use the .git/config file format for storing the bookkeeping data.

Steve

On Jul 14, 2012, at 3:46 PM, David Aguilar wrote:

> On Sat, Jul 14, 2012 at 7:41 AM, Felix Natter <fnatter@gmx.net> wrote:
>> hello,
>> 
>> when converting a repo from bzr to git:
>> 
>> mkdir freeplane-git1
>> cd freeplane-git1
>> git init .
>> bzr fast-export --plain --export-marks=../marks.bzr ../trunk/ | git fast-import --export-marks=../marks.git
>> git checkout
>> 
>> Empty directories are not contained in the git working index. This is
>> because of the --plain option, which "Excludes metadata to maximise
>> interoperability" and thus does not support empty directories
>> (http://doc.bazaar.canonical.com/plugins/en/fastimport-plugin.html).
>> 
>> However, when I use "--no-plain" (which according to above documentation
>> exports empty directories), git cannot handle it:
>> 
>> $ ./freeplane2git.sh
>> Initialized empty Git repository in /home/felix/git/freeplane-git1/.git/
>> 15:56:09 Calculating the revisions to include ...
>> 15:56:09 Starting export of 4290 revisions ...
>> fatal: This version of fast-import does not support feature commit-properties.
>> fast-import: dumping crash report to .git/fast_import_crash_3915
>> bzr: broken pipe
>> 
>> I already tried to hack bzr-fastimport's exporter.py so that it does not
>> emit commit properties but emits empty directories but i was not
>> successful.
>> 
>> So is there another way to preserve empty directories or shall I report
>> a bug on bzr fast-export?
>> 
>> Many thanks in advance!
> 
> I would suggest hacking it to optionally not emit commit properties as step one.
> 
> A later enhancement would be to optionally create directories with
> empty .gitignore files, or something similar. git really doesn't care
> about empty directories.
> -- 
> David
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-07-15  4:02 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-07-14 14:41 bzr->git: keep empty directories Felix Natter
2012-07-14 22:46 ` David Aguilar
2012-07-15  4:01   ` Steven Michalske

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.