2013-04-02 2 views
0

libgit2 API를 사용하면 추적을 위해 파일을 '추가'하거나 스테이징 영역에 수정 된 파일을 추가하는 것과 차이가 있습니까?추적 및 스테이징 파일 간의 코딩 차이

이것은 내가 현재 수정 추적 파일을 무대에 사용하고있는 코드 :

int giterror = git_repository_index(&index, open_repo); 
if(giterror != 0) 
{ 
    return giterror; 
} 

// Refresh the index from disk to load the entries that may already be staged 
giterror = git_index_read(index); 
if(giterror != 0) 
{ 
    git_index_free(index); 

    return giterror; 
} 


giterror = git_index_add_bypath(index, relativeFilePath); 
if(giterror != 0) 
{ 
    git_index_free(index); 

    return giterror; 
} 


// write updated index to disk - aka staging area 
giterror = git_index_write(index); 
if(giterror != 0) 
{ 
    git_index_free(index); 

    return giterror; 
} 


// write the index of changes to a tree 
git_oid rootTreetOID; 
giterror = git_index_write_tree(&rootTreetOID, index); 
if(giterror != 0) 
{ 
    git_index_free(index); 

    return giterror; 
} 

내가 인덱스에 비 추적 파일을 추가 동일한 코드를 사용해야을?

답변

1

예. 그렇습니다.

git_index_add_bypath() 설명서에 "디스크의 파일에서 색인 항목 추가 또는 업데이트"을 사용하려는 경우이 방법을 사용해야한다고 나와 있습니다.

이 방법은

  • 인덱스에
  • 단계 파일의 수정을 미 추적 파일을 추가 할 수 있습니다