Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » EGit / JGit » egit refuses to create branch
egit refuses to create branch [message #647483] Thu, 06 January 2011 15:47 Go to next message
jsb is currently offline jsbFriend
Messages: 1
Registered: January 2011
Junior Member
Hi,

I have a problem with egit, which I would assume to be occured with the new release of Egit (0.10.1) (unfortunately I am not able to recover 0.9.3).

Egit refuses to create a branch out of clone just received from a repository. The errorlog shows the following:

The file in question has probably different encodings for the filename (as far as I understood): latin1 and utf8
Any ideas how to sove this

Best
Jürgen

java.lang.IllegalStateException: Duplicate stages not allowed: 0 file/xxüühdhdh.pdf
at org.eclipse.jgit.dircache.DirCacheBuilder.bad(DirCacheBuilde r.java:247)
at org.eclipse.jgit.dircache.DirCacheBuilder.resort(DirCacheBui lder.java:236)
at org.eclipse.jgit.dircache.DirCacheBuilder.finish(DirCacheBui lder.java:192)
at org.eclipse.jgit.dircache.DirCacheCheckout.checkout(DirCache Checkout.java:362)
at org.eclipse.egit.core.op.BranchOperation.checkoutTree(Branch Operation.java:182)
at org.eclipse.egit.core.op.BranchOperation.access$4(BranchOper ation.java:177)
at org.eclipse.egit.core.op.BranchOperation$1.run(BranchOperati on.java:113)
at org.eclipse.core.internal.resources.Workspace.run(Workspace. java:1800)
at org.eclipse.core.internal.resources.Workspace.run(Workspace. java:1782)
at org.eclipse.egit.core.op.BranchOperation.execute(BranchOpera tion.java:127)
at org.eclipse.egit.ui.internal.repository.CreateBranchPage.cre ateBranch(CreateBranchPage.java:270)
at org.eclipse.egit.ui.internal.repository.CreateBranchWizard$1 .run(CreateBranchWizard.java:67)
at org.eclipse.jface.operation.ModalContext.runInCurrentThread( ModalContext.java:464)
at org.eclipse.jface.operation.ModalContext.run(ModalContext.ja va:372)
at org.eclipse.jface.wizard.WizardDialog.run(WizardDialog.java: 944)
at org.eclipse.egit.ui.internal.repository.CreateBranchWizard.p erformFinish(CreateBranchWizard.java:62)
at org.eclipse.jface.wizard.WizardDialog.finishPressed(WizardDi alog.java:752)
at org.eclipse.jface.wizard.WizardDialog.buttonPressed(WizardDi alog.java:373)
at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.jav a:624)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListe ner.java:228)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1176)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.ja va:3493)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3112)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:825 )
at org.eclipse.jface.window.Window.open(Window.java:801)
at org.eclipse.egit.ui.internal.repository.tree.command.CreateB ranchCommand.execute(CreateBranchCommand.java:91)
at org.eclipse.ui.internal.handlers.HandlerProxy.execute(Handle rProxy.java:294)
at org.eclipse.core.commands.Command.executeWithChecks(Command. java:476)
at org.eclipse.core.commands.ParameterizedCommand.executeWithCh ecks(ParameterizedCommand.java:508)
at org.eclipse.ui.internal.handlers.HandlerService.executeComma nd(HandlerService.java:169)
at org.eclipse.ui.internal.handlers.SlaveHandlerService.execute Command(SlaveHandlerService.java:241)
at org.eclipse.ui.internal.handlers.SlaveHandlerService.execute Command(SlaveHandlerService.java:241)
at org.eclipse.ui.menus.CommandContributionItem.handleWidgetSel ection(CommandContributionItem.java:770)
at org.eclipse.ui.menus.CommandContributionItem.access$10(Comma ndContributionItem.java:756)
at org.eclipse.ui.menus.CommandContributionItem$5.handleEvent(C ommandContributionItem.java:746)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1176)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.ja va:3493)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3112)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2405)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:22 21)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)
at org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:493)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start (IDEApplication.java:113)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.java:194)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:368)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcce ssorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe thodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java: 559)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
at org.eclipse.equinox.launcher.Main.main(Main.java:1287)

[Updated on: Thu, 06 January 2011 16:06]

Report message to a moderator

Re: egit refuses to create branch [message #702519 is a reply to message #647483] Tue, 26 July 2011 13:33 Go to previous messageGo to next message
Rico Kahnert is currently offline Rico KahnertFriend
Messages: 2
Registered: July 2009
Junior Member
Hello,

we have the same problem, when we clone our repository with egit and try to work with branches.
We got some files in the repository that contain German Umlauts.
The repository resides on a Linux file server, the client is a Windows machine.
We tried several things: switched the encoding on the Linux server to utf-8, configured the client with the property core.pathencoding UTF-8, but it still doesn't work.
I cloned the repository from the command line with msysgit. It seems that it recognizes that there is a problem, but I can work with the lokal repository, I have no problem checking out branches.

c:\projekte\git\cvsnew>git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# renamed: "xxx.xxx.xxx.icons/src/icons/xxxx-anwendungs\374bergreifende-funktionen.png" -> "xxx.xxx.xxx.icons/src/icons/xxxx-anwendungs\303\274bergreifende-funktionen.png"
#
# Changes not staged for commit:
# (use "git add/rm <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# deleted: "xxx.xxx.xxx.icons/src/icons/xxxx-anwendungs\303\274bergreifende-funktionen.png"
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# "xxx.xxx.xxx.icons/src/icons/xxx-anwendungs\374bergreifende-funktionen.png"


Interesting enough I can use this repository with egit.
I tried egit v1.0 and a build from about 2 weeks ago (v1.1.0.201107171612).

Is this a known problem? Is there a workaround?

Thanks,
Rico
Re: egit refuses to create branch [message #702844 is a reply to message #702519] Tue, 26 July 2011 22:01 Go to previous messageGo to next message
Robin Rosenberg is currently offline Robin RosenbergFriend
Messages: 332
Registered: July 2009
Senior Member
Rico Kahnert skrev 2011-07-26 15.33:
> Hello,
>
> we have the same problem, when we clone our repository with egit and try
> to work with branches.
> We got some files in the repository that contain German Umlauts. The
> repository resides on a Linux file server, the client is a Windows machine.
> We tried several things: switched the encoding on the Linux server to
> utf-8, configured the client with the property core.pathencoding UTF-8,
> but it still doesn't work.
> I cloned the repository from the command line with msysgit. It seems
> that it recognizes that there is a problem, but I can work with the
> lokal repository, I have no problem checking out branches.
>
> c:\projekte\git\cvsnew>git status
> # On branch master
> # Changes to be committed:
> # (use "git reset HEAD <file>..." to unstage)
> #
> # renamed:
> "xxx.xxx.xxx.icons/src/icons/xxxx-anwendungs\374bergreifende-funktionen.png"
> ->
> "xxx.xxx.xxx.icons/src/icons/xxxx-anwendungs\303\274bergreifende-funktionen.png"
>
> #
> # Changes not staged for commit:
> # (use "git add/rm <file>..." to update what will be committed)
> # (use "git checkout -- <file>..." to discard changes in working
> directory)
> #
> # deleted:
> "xxx.xxx.xxx.icons/src/icons/xxxx-anwendungs\303\274bergreifende-funktionen.png"
>
> #
> # Untracked files:
> # (use "git add <file>..." to include in what will be committed)
> #
> #
> "xxx.xxx.xxx.icons/src/icons/xxx-anwendungs\374bergreifende-funktionen.png"
>
>
> Interesting enough I can use this repository with egit.
> I tried egit v1.0 and a build from about 2 weeks ago (v1.1.0.201107171612).
>
> Is this a known problem? Is there a workaround?

Yes it is. Non-ASCII file names is a problem with Git in more than one
ways. Look at bugzilla for more details.

There is a patch in Gerrit for teaching EGit to work with other file
name encodings than NFC UTF-8. It seems to work, but needs cleanup when
I get time to do it. Meanwhile there is a set of patches for make
MSysGit do what I really want, i.e. standardize on UTF-8 for path names
in Git, regardless of the user's locale. EGit always encodes in UTF-8.
It is not a server feature, it's how the file names are encoded in the
repository.

One workaround is to recode the filenames and use Git with a cygwin and
UTF-8 (for Windows users).

Another is to rename all non-ascii names to ASCII names. Currently that
is the best solution. It *will* work.

You could also try the patch in Gerrit. It is a bit outdated by now, but
any feedback is most welcome. On the downside is that you need to build
the plugin yourself, but there are instructions on the Wiki and it's not
terribly difficult.

-- robin


-- robin
Re: egit refuses to create branch [message #702845 is a reply to message #702519] Tue, 26 July 2011 22:01 Go to previous message
Robin Rosenberg is currently offline Robin RosenbergFriend
Messages: 332
Registered: July 2009
Senior Member
Rico Kahnert skrev 2011-07-26 15.33:
> Hello,
>
> we have the same problem, when we clone our repository with egit and try
> to work with branches.
> We got some files in the repository that contain German Umlauts. The
> repository resides on a Linux file server, the client is a Windows machine.
> We tried several things: switched the encoding on the Linux server to
> utf-8, configured the client with the property core.pathencoding UTF-8,
> but it still doesn't work.
> I cloned the repository from the command line with msysgit. It seems
> that it recognizes that there is a problem, but I can work with the
> lokal repository, I have no problem checking out branches.
>
> c:\projekte\git\cvsnew>git status
> # On branch master
> # Changes to be committed:
> # (use "git reset HEAD <file>..." to unstage)
> #
> # renamed:
> "xxx.xxx.xxx.icons/src/icons/xxxx-anwendungs\374bergreifende-funktionen.png"
> ->
> "xxx.xxx.xxx.icons/src/icons/xxxx-anwendungs\303\274bergreifende-funktionen.png"
>
> #
> # Changes not staged for commit:
> # (use "git add/rm <file>..." to update what will be committed)
> # (use "git checkout -- <file>..." to discard changes in working
> directory)
> #
> # deleted:
> "xxx.xxx.xxx.icons/src/icons/xxxx-anwendungs\303\274bergreifende-funktionen.png"
>
> #
> # Untracked files:
> # (use "git add <file>..." to include in what will be committed)
> #
> #
> "xxx.xxx.xxx.icons/src/icons/xxx-anwendungs\374bergreifende-funktionen.png"
>
>
> Interesting enough I can use this repository with egit.
> I tried egit v1.0 and a build from about 2 weeks ago (v1.1.0.201107171612).
>
> Is this a known problem? Is there a workaround?

Yes it is. Non-ASCII file names is a problem with Git in more than one
ways. Look at bugzilla for more details.

There is a patch in Gerrit for teaching EGit to work with other file
name encodings than NFC UTF-8. It seems to work, but needs cleanup when
I get time to do it. Meanwhile there is a set of patches for make
MSysGit do what I really want, i.e. standardize on UTF-8 for path names
in Git, regardless of the user's locale. EGit always encodes in UTF-8.
It is not a server feature, it's how the file names are encoded in the
repository.

One workaround is to recode the filenames and use Git with a cygwin and
UTF-8 (for Windows users).

Another is to rename all non-ascii names to ASCII names. Currently that
is the best solution. It *will* work.

You could also try the patch in Gerrit. It is a bit outdated by now, but
any feedback is most welcome. On the downside is that you need to build
the plugin yourself, but there are instructions on the Wiki and it's not
terribly difficult.

-- robin


-- robin
Previous Topic:View like Git GUI
Next Topic:Creating new project on branch, lost in switch
Goto Forum:
  


Current Time: Thu Mar 28 13:42:46 GMT 2024

Powered by FUDForum. Page generated in 0.02423 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top