2010-06-27 3 views
8

나는 자식에 읽은 문서의 모든 조각은 내가 명령 줄에서 "자식은 diff"를 입력 수 있다고하지만, 내가 할 때마다 내가 얻을 :왜 명령 행에서 git diff가 작동하지 않습니까? (온라인 책과 내장 도움말 등)

usage: git diff [--no-index] <path> <path>

$ git diff 
usage: git diff [--no-index] <path> <path> 

$ git diff HEAD 
usage: git diff [--no-index] <path> <path> 

$ git diff -- 
usage: git diff [--no-index] <path> <path> 

$ git diff -- . 
usage: git diff [--no-index] <path> <path> 

$ git diff --stat 
usage: git diff [--no-index] <path> <path> 

$ git --version 
git version 1.7.1 

내가 여기서 뭔가를 놓치고 있습니까 : 여기

내가 지금까지 시도했습니다 무엇 (모든 문서의 예입니다)?

+0

죄송합니다 ... stackoverflow 꺾쇠 괄호 사이의 모든 항목을 제거하고 "태그"로 끝나는 각 줄 끝에서 줄 바꿈을 제거했습니다. "사용"텍스트는 다음 행에 있어야합니다. 꺾쇠 괄호 대신 괄호가있는 실제 오류 메시지 : "사용법 : git diff [--no-index] (경로) (경로)" – Karl

답변

9

실제로 실행할 때 Git 저장소가있는 디렉토리 안에 있습니까? (git rev-parse --git-dir) 명령은 저장소를 찾고 유용한 출력을 생성하기 위해 작업중인 트리를 판별 할 수 있어야합니다. 그렇지 않으면 (리포지토리를 식별 할 수없는 경우) 기본적으로 일반 recursive-diff 명령이되며 작동하려면 두 개의 경로가 필요합니다.

+0

그래, 그게 다야. 이 문서에서는 git diff의 "기능"에 대해 언급하지 않습니다. 어떻게이 작전 모드에 대해 알고 계셨습니까? – Karl

+0

@Karl : [* git diff * 맨 페이지] (http://www.kernel.org/pub/software/scm/git/docs/git-diff.html)에서 : "정확히 두 개의 경로가 주어지면 적어도 하나는 추적 할 수 없으므로 두 파일/디렉토리를 비교하십시오. 이 동작은 --no-index에 의해 강제 될 수 있습니다. " –

1

git diff --no-index을 사용하십시오. []은 인수가 선택 사항임을 의미합니다.

1

git 저장소에서 작업하고 있습니까? git 상태라면, 다음과 비슷한 것을 얻을 수 있을까요?

> $ git status 
> # On branch develop.new_feature 
> # Changed but not updated: 
> # (use "git add <file>..." to update what will be committed) 
> # 
> # modified: feature 
> # modified: www/jkll.jsp 
> # 
> # Untracked files: 
> # (use "git add <file>..." to include   ... 
관련 문제