Hi Jelmer,

AFAIK There isn't a parameter for users to disable extra headers when
importing code into Github.
https://porter.github.com/new

Am I correct in understanding that you added the functionality in Dulwich
to ignore extra headers so it wouldn't crash when encountering extra
headers?
http://git.661346.n2.nabble.com/extra-headers-in-commit-objects-td4508608.html
Could you add this functionality to bzr-git, so that bzr-git would be
compliant
with the C git rule to ignore extra headers that aren't recognized, after
the encoding header?


On Tue, Oct 21, 2014 at 9:21 PM, Jelmer Vernooij <[email protected]
> wrote:

> Hi Susan,
>
> See this thread, which sprung up on the Git list after I added support
> for extra commit headers in Dulwich: http://git.661346.n2.nabble.com
> /extra-headers-in-commit-objects-td4508608.html
>
> The consensus among Git developers seems to be that defining new header
> fields should be left up to the Git developers. What hg-git is doing
> goes against that.
>
> bzr-git doesn't completely adhere to the guidelines in that thread
> either since it doesn't just drop unknown fields. There are good reasons
> it can't just ignore headers it doesn't know about though. See my
> earlier comments for a more thorough explanation:
>
> Throwing an error when unknown fields are encountered is intended
> behaviour. bzr-git can't just drop unknown metadata since that makes it
> impossible to reserialize the original Git objects later. Reserializing
> is necessary since the original git objects are used as delta bases.
>
> bzr-git could store all unknown headers in an extra metadata field. We
> don't do this since it means we can't change the mapping of any unknown
> headers later without breaking all existing bzr-git users. Instead,
> since git commit header extensions are so rare, we require explicit
> support for them in bzr-git.
>
> Dulwich is used for parsing and creating Git objects in bzr-git; bzr-git
> doesn't use Dulwich to store data, it uses native Bazaar objects.
>
> Is your project itself maintained in Git or in Mercurial? If it is in
> Mercurial, you could disable the setting of extra headers in hg-git or
> alternatively run a cronjob somewhere that uses hg-fastexport and bzr-
> fastimport to create a bzr branch from a mercurial branch.
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1372149
>
> Title:
>   bzr-git does not preserve or ignore unknown extra fields
>
> Status in bzr git support plugin:
>   Confirmed
> Status in Valentina. Pattern making program.:
>   New
> Status in “valentina” package in Ubuntu:
>   New
>
> Bug description:
>   I can't import source code from git. Here log:
>   2014-09-21 12:57:19 INFO    Starting job.
>   2014-09-21 12:57:19 INFO    Getting exising bzr branch from central
> store.
>   2014-09-21 12:57:20 INFO    [chan bzr SocketAsChannelAdapter] Opened
> sftp connection (server version 3)
>   2014-09-21 12:57:20 INFO    35 bytes transferred
>   2014-09-21 12:57:29 INFO    [chan bzr SocketAsChannelAdapter] Opened
> sftp connection (server version 3)
>   2014-09-21 12:57:30 INFO    Importing branch.
>   2014-09-21 12:57:32 INFO    Counting objects: 2724, done. 0
>   2014-09-21 12:57:34 INFO    finding revisions to fetch:generating index
> 0/2724
>   2014-09-21 12:57:36 INFO    finding revisions to fetch:generating index
> 0/2724
>   2014-09-21 12:57:36 INFO    finding revisions to fetch 1/608
>   2014-09-21 12:57:36 INFO
>   Traceback (most recent call last):
>     File "/srv/
> importd.launchpad.net/production/launchpad-rev-17196/scripts/code-import-worker.py",
> line 95, in <module>
>       sys.exit(script.main())
>     File "/srv/
> importd.launchpad.net/production/launchpad-rev-17196/scripts/code-import-worker.py",
> line 90, in main
>       return import_worker.run()
>     File "/srv/
> importd.launchpad.net/production/launchpad-rev-17196/lib/lp/codehosting/codeimport/worker.py",
> line 576, in run
>       return self._doImport()
>     File "/srv/
> importd.launchpad.net/production/launchpad-rev-17196/lib/lp/codehosting/codeimport/worker.py",
> line 730, in _doImport
>       inter_branch.fetch(limit=revision_limit)
>     File "/srv/
> importd.launchpad.net/production/launchpad-rev-17196/bzrplugins/git/branch.py",
> line 722, in fetch
>       self.fetch_objects(stop_revision, fetch_tags=fetch_tags, limit=limit)
>     File "/srv/
> importd.launchpad.net/production/launchpad-rev-17196/bzrplugins/git/branch.py",
> line 745, in fetch_objects
>       determine_wants, self.source.mapping, limit=limit)
>     File "/srv/
> importd.launchpad.net/production/launchpad-rev-17196/bzrplugins/git/fetch.py",
> line 718, in fetch_objects
>       limit)
>     File "/srv/
> importd.launchpad.net/production/launchpad-rev-17196/bzrplugins/git/fetch.py",
> line 484, in import_git_objects
>       mapping.revision_id_foreign_to_bzr)
>     File "/srv/
> importd.launchpad.net/production/launchpad-rev-17196/bzrplugins/git/mapping.py",
> line 334, in import_commit
>       raise UnknownCommitExtra(commit, [item[0] for item in commit.extra])
>   bzrlib.plugins.git.errors.UnknownCommitExtra: Unknown extra fields in
> <Commit 56ead206c93f1ed9d6f1d46cbfa2a8e79cdad63c>: ['HG:rename',
> 'HG:rename', 'HG:rename', 'HG:rename', 'HG:rename', 'HG:rename',
> 'HG:rename', 'HG:rename', 'HG:rename', 'HG:rename', 'HG:rename',
> 'HG:rename', 'HG:rename', 'HG:rename', 'HG:rename', 'HG:rename'].
>   Import failed:
>   Traceback (most recent call last):
>   Failure: twisted.internet.error.ProcessTerminated: A process has ended
> with a probable error condition: process ended with exit code 1.
>
>   Can anyone help me? Can't understand what's wrong.
>   This git repository (https://github.com/dismine/Valentina.git) only a
> mirror and i used hg-git for pushing changes.
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/bzr-git/+bug/1372149/+subscriptions
>

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1372149

Title:
  bzr-git does not preserve or ignore unknown extra fields

To manage notifications about this bug go to:
https://bugs.launchpad.net/bzr-git/+bug/1372149/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to