Mercurial 오류 : 제공된 사용자 이름 없음 중단


117

Mercurial을 처음 사용하는 WindowsXP의 문제 (모든 Win 설치에서 발생할 수 있음). 나는 분명하지 않은 곳에서 답을 찾았으므로 다른 사람들이 나처럼 검색 할 필요가 없도록 직접 질문 / 답변하고 있습니다.

머신에서 처음으로 Mercurial을 사용합니다.

새 저장소 추가 :

c:\bla\>hg add

문제 없어요.

다음으로 커밋합니다.

c:\bla\hg commit

오류:

abort : 제공된 사용자 이름 없음 ( "hg 도움말 구성"참조)


70
버전 관리 유틸리티에 대한 정보는 어떻게되어 있지 관련 프로그래밍을?
mipadi 2010

5
@mipadi : 키보드 사용에 대한 정보가 프로그래밍과 관련이없는 것과 같은 방식입니다.
Draemon

2 년이 넘었고이 문제가 여전히 존재한다는 것은 Mecurial에게 정말 검은 눈입니다.
Celeritas 2013 년

Cygwin에서 저주받은 파일은 어디에 있습니까 ??! ... 아. . REPO가 clone'd 또는 init'ed 경우 (REPO) / HG에 하나있다
LUSER의 droog

답변:


94

해결책:

내 Windows 설치에서 Mercurial.ini전파되지 않았습니다. 또한 사용자 이메일이 추가되어야합니다.

Mercurial.iniMercurial 실행 파일 설치 디렉토리 ( C:\Program Files\Mercurial\Mercurial.ini내 컴퓨터)에 있는 기본 파일 을 사용자 홈 디렉토리 ( C:\Documents and Settings\myNamewinXP)에 복사합니다 .

Windows 7 설치에는 기본 .ini가 없으므로 .ini 파일에서 새로 만들어야합니다 C:\Users\myName.

그런 다음 해당 .ini 파일을 편집하십시오. 이 지역을 찾으십시오. 사용자 이름에는 이메일 세트가 필요합니다. 비어 있습니다. 여기에 이메일 이름을 추가하세요.

[ui]
; editor used to enter commit logs, etc.  Most text editors will work.
editor = notepad
username = userEmail@domain.com

이것은 나를 위해 문제를 해결했습니다.


1
나는 미래의 누군가가이 너겟으로 시간을 낭비하지 않도록 돕기 위해이 q / a를 게시했습니다.
Kevin Won

4
실제로 내 설치 디렉토리에도 Mercurial.ini 파일이 없습니다. 위의 텍스트로 내 저장소 hgrc.hg폴더에 라는 파일을 추가하면 변경 사항을 커밋 할 수 있습니다.
Phil Gan

2
내 설치 디렉토리에도 Mercurial.ini 파일이 없습니다 (Win 7 64 비트). C : \ Users \ Abbas에 Mercurial.ini를 만들고 Kevin의 [ui] 스 니펫을 복사하여 붙여 넣었는데 마치 매력처럼 작동했습니다. Phil의 솔루션을 시도했지만 작동했습니다.
Abbas

질문과 답변에 감사드립니다. 그것을 알아내는 데는 나이가 들었을 것입니다. 아, Windows에서 개발의 어려움 ...
Wes

저는 Tortoise Hg를 사용하고 있으며 그 팁도 저에게 도움이됩니다. 감사 !
James Freitas

51

미안하지만 왜 이것을 문제라고 부릅니까? Mercurial은을 (를) 보라고 요청합니다. hg help config이 도움말 텍스트는 사용자 이름을 추가하는 방법을 명시 적으로 알려줍니다. 도움말 텍스트를 작성했기 때문에 알고 있습니다. :-)

이를 더 명확하게하기 위해 오류 메시지를 어떻게 개선해야합니까?

편집 : 2010 년에이 글을 썼기 때문에 hg help config모든 구성 설정에 대한 도움말을 포함 하여이 문제를 해결했습니다 . 사용자 이름을 설정하는 방법에 대한 멋진 예 :

[ui]
username = Your Name <your@email.com>

이제 노이즈로 인해 손실됩니다 (이를에 추가 ~/.hgrc하고 필요한 경우 파일을 생성 함). 나는 이것에 대한 문제 를 열었습니다 .


1
설명 해주셔서 감사합니다. 사람들이 찾은 솔루션에 대한 질문에 대한 후속 조치를 취하는 것을 보는 것은 매우 좋습니다. :-) 그러나의 도움말 텍스트 hg help config에는 Windows에 대한 지침이 포함되어 있습니다. 즉, Mercurial.ini파일 의 가능한 위치를 나열 합니다. 위치 중 하나가 C:\Program Files\Mercurial\Mercurial.ini(로 나열 됨 <install-dir>\Mercurial.ini)이므로 해당 파일의 설정이 적용되지 않은 이유를 잘 모르겠습니다.
Martin Geisler

13
저에게 가장 큰 문제 (그리고 저를이 질문으로 이끌었던 것)는 빠른 시작 페이지 ( mercurial.selenic.com/quickstart/#) 에 언급 된 것이 없다는 사실이었습니다 . 이 페이지는 도움말 텍스트를 읽지 않고는 기본 설치 후 지침에 따라 작동하지만 작동하지 않음을 의미합니다. 이 시점에서 당신은 이미 무언가 잘못되었다고 생각하기 때문에 긴장합니다
Nick Fortescue

7
@Martin Geisler :이 hg help config텍스트는 문제를 해결하기 위해 우리가해야 할 일을 말하지 않으며 "On Windows"섹션에서 경로가 가리키는 위치가 특히 명확하지 않습니다. %USERPROFILE%또는 %HOME%지적 은 어디 입니까? 다음 설치 mercurial.ini가 내 시스템의 어디에도 존재하지 않는다는 것은 도움 이되지 않는다고 생각합니다.
Phil Gan

8
모욕적이라는 뜻이 아니니 건설적인 시도로 삼으십시오. "hg help config"를 수행 할 때 표준으로 출력되는 1260 줄의 텍스트에 답변이있을 수 있지만 실제로는 1260 줄의 텍스트가 과도하고 짧은 답변이라고 생각합니다. 문서는 훨씬 더 좋을 것입니다.
Tony Giaccone 2012

4
@TonyGiaccone : 2010 년 hg help config에는 텍스트 한 화면 만 인쇄 할 수 있었으며 사용자 이름 설정이 해당 텍스트의 주요 예라는 것을 확인했습니다. : 그 이후로 우리는 그 출력의 모든 구성 옵션에 대한 도움말 텍스트를 포함하여 그 위로 나사를 관리했습니다 :-( 나는 이것에 대한 문제를 열었습니다 mercurial.selenic.com/bts/issue3348
마틴 가이슬러

13

Windows XP에서는 ini 파일이 보이지 않습니다. 명령을 사용하여 리포지토리를 만든 후 hg init이름 hgrc이 있는 파일을 폴더에 추가했습니다..hg

다음 내용으로 :

[ui]  
editor = notepad  
username = zamboni@icemachine.com

1
의 언급 hgrc.hg폴더가 도움이되었다
E가 풍부한

9

Windows 또는 Linux에 관계없이 hg는 유효한 구성을 위해 "/.hg/hgrc"파일을 찾습니다. "hg help config"에서와 같이 해당 파일의 끝에 다음 행만 추가하면됩니다.

[ui]
username = YOUR NAME <EMAIL@HOST.COM>
verbose = true

저장 및 "hg commit -m 'test'"


4

TortoiseHg를 사용하는 경우 [UI] 설정을 쉽게 추가 할 수 있습니다.

  1. 폴더 탐색기를 마우스 오른쪽 버튼으로 클릭하여 TortoiseHg 메뉴 에 액세스 합니다.

  2. 플라이 아웃 TortoiseHg 메뉴에서 전역 설정을 선택 합니다.

  3. 인터페이스에서 파일 편집을 클릭하십시오.

  4. 끝에 [UI] 설정 추가

[ui]

사용자 이름 = YourName

verbose = true

  1. 저장하면 완료됩니다

3

Windows XP에서 저에게 매력적으로 작용 한 것은 다음과 같습니다.

  1. C:\Program Files\Mercurial\hgrc.dMercurial을에 설치했다고 가정 하고 폴더로 이동합니다 C:\Program Files\Mercurial\.
  2. Mercurial.RC거기에 파일 이 보일 것입니다.
  3. 파일 복사 C:\Documents and Settings\ [USERNAME]\
  4. 이름 Mercurial.RCMercurial.ini.
  5. 다음과 같이 [ui] 섹션을 편집합니다.

    [ui]

    ; 커밋 로그 등을 입력하는 데 사용되는 편집기. 대부분의 텍스트 편집기가 작동합니다.

    편집기 = 메모장

    verbose = True

    사용자 이름 = userEmail@domain.com


Windows Server 2008 및 64 비트 Mercurial msi에서도 작동합니다. 단, 3 단계는 c : \ users [username]이어야합니다.
Andrew Cowenhoven 2011 년

"TortoiseHg 2.2 with Mercurial 2.0-x86 Windows"를 설치하면 Mercurial.RC 파일은 C : \ Program Files \ TortoiseHg \ hgrc.d
urig

1

나는 같은 문제가 있었다. 나를 넣어 무슨 도움 [ui]username = firstname lastname의 별도의 줄에 ~/.hgrc파일. 이 두 가지를 한 줄에 입력해도 작동하지 않아 오류가 발생했습니다.


1

이 문제는 여전히 존재합니다. 그만큼mercurial.ini파일은 넣어 상관없이 무시됩니다.

mercurial.ini설치 중에 파일이 생성 되지 않습니다 . Mercurial 설치 디렉토리에 하나를 만들었지 만 효과가 없었습니다. 나는 그것을 %USERPROFILE%다음으로 복사했다.%HOME% 했지만 둘 다 작동하지 않습니다.

퍼팅 .hgrc홈 디렉토리에 작동합니다.

문서 ( "hg help config")를 수정해야합니다.


1

다음과 같이 .hgrc를 구성하십시오.

[ui]
username = your name <youremail@host.com>
verbose = True

노트!! [ui] 부분을 생략하지 마십시오.


0

이것은 도움말 파일에 지정된 구성 파일의 경로가 존재하지 않기 때문에 문제 Mercurial.ini입니다. 프로그램 파일 디렉토리에서 USER 디렉토리 로 복사해야합니다 . Windows의 설치 프로그램에서 발생하는 문제 일 수 있습니다.

@Kevin Won : 줄을 추가하는 것을 잊었습니다.

verbose = True
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.