libgit2로 가져 오기 (가져 오기 및 병합)

Joshua

풀 기능을 구현하기 위해 objecitive-git 및 libgit2를 사용하고 있습니다. 마찬가지로 git pull단지 '도자기'명령이며 위로 만든다 git fetcha로 다음에 git merge origin/master그 내가 그것을 구현하는 방법이 될 것입니다.

fetch는 github의 fetch 브랜치에서 objective-git의 메소드를 사용하여 수행됩니다.

[remote fetchWithCredentialProvider:nil error:&error progress:nil];

아래 코드는 가져 오기 후에 수행되는 작업입니다 (성공한 것으로 알고 있음).

// Get the local branch
GTBranch *localBranch = [repo localBranchesWithError:nil][0];
// Get the remote branch
GTBranch *remoteBranch = [repo remoteBranchesWithError:nil][0];

// Get the local & remote commit
GTCommit *localCommit = [localBranch targetCommitAndReturnError:nil];
GTCommit *remoteCommit = [remoteBranch targetCommitAndReturnError:nil];

// Get the trees of both
GTTree *localTree = localCommit.tree;
GTTree *remoteTree = remoteCommit.tree;

// Get OIDs of both commits too
GTOID *localOID = localCommit.OID;
GTOID *remoteOID = remoteCommit.OID;

// Find a merge base to act as the ancestor between these two commits
GTCommit *ancestor = [repo mergeBaseBetweenFirstOID:localOID secondOID:remoteOID error:&error];
if (error) {
    NSLog(@"Error finding merge base: %@", error);
}
// Get the ancestors tree
GTTree *ancestorTree = ancestor.tree;

// Merge into the local tree
GTIndex *mergedIndex = [localTree merge:remoteTree ancestor:ancestorTree error:&error];
if (error) {
    NSLog(@"Error mergeing: %@", error);
}

// Write the merge to disk and store the new tree
GTTree *newTree = [mergedIndex writeTreeToRepository:repo error:&error];
if (error) {
    NSLog(@"Error writing merge index to disk: %@", error);
}

애프터 mergedIndex메모리에서 시작되는이 디스크 (에 나무로 기록 된 writeTreeToRepository사용 git_index_write_tree_to)을 자식 REPOS 상태에 변화가 없다. 새 트리를 HEAD로 만들거나 HEAD 또는 이와 유사한 것과 병합하는 마지막 단계가 없다고 가정하고 있지만 정확히 무엇인지 잘 모르겠습니다.

어떤 도움도 많은 의무가 있습니다.

카를로스 마틴 니에 토

당신은 당신이 커밋 병합에 사용할 나무가 있으면, 당신은 당신이 만들 수있는 병합 커밋 만들 필요가 createCommitWithTree에서 GTRepository하지만 부모님 모두 조상과 함께, 당신은 다른를 만들 것과 같은 방법. 이 기능을 사용하면 저장소가 조용한 상태 일 것으로 예상되는 경우 라이브러리에 특정 분기를 업데이트하도록 요청할 수도 있습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

libgit2로 새 분기 만 가져 오기

분류에서Dev

파일 병합 및 id 필드를 기반으로 열 값 가져 오기

분류에서Dev

여러 .txt 파일 가져 오기 및 병합

분류에서Dev

R : 특정 열만 가져 오기 및 병합

분류에서Dev

일괄 가져 오기 Parse 및 Swift 2

분류에서Dev

while 및 foreach로 PDO 가져 오기

분류에서Dev

MySQL로 CSV 가져 오기 및

분류에서Dev

grequest로 게시 및 가져 오기

분류에서Dev

OrderBy 및 LINQ 가져 오기

분류에서Dev

MVC 및 UIKit 가져 오기

분류에서Dev

CURL에서 데이터 가져 오기, 병합 및 내보내기

분류에서Dev

OWLAPI 4 : 온톨로지 가져 오기 또는 병합?

분류에서Dev

데이터 프레임 병합 및 추가 행 가져 오기. (Python / Pandas)

분류에서Dev

가져 오기 및 로컬과의 인터페이스 병합이 작동하지 않습니까?

분류에서Dev

HTTP 가져 오기 및 .xml 가져 오기가있는 AsyncTask

분류에서Dev

jquery로 행 합계 가져 오기

분류에서Dev

원격 tar 병렬화 및 ssh 파이프로 출력 가져 오기

분류에서Dev

추가 가져 오기 및 추가, DialogFragment

분류에서Dev

2D 배열 초기화로 가져 오기 및 설정

분류에서Dev

PHP 및 RESTful API로 파일 가져 오기 및 보내기

분류에서Dev

Laravel : 라디오 버튼에서 값 가져 오기 및 결합

분류에서Dev

Python Unittest 및 가져 오기 오류

분류에서Dev

다른 분기에 병합 된 분기 목록 가져 오기

분류에서Dev

Excel VBA 매크로 : 통합 문서 가져 오기, 열 복사 및 가져온 통합 문서 반복

분류에서Dev

로그인, 이름 가져 오기 및 로그 아웃 오류

분류에서Dev

IOrderedQueryable 건너 뛰기 및 가져 오기

분류에서Dev

Angular2 및 Typescript 가져 오기 오류 발생

분류에서Dev

모듈 가져 오기 및 파일로드 오류

분류에서Dev

Unity로 OBJ 가져 오기

Related 관련 기사

  1. 1

    libgit2로 새 분기 만 가져 오기

  2. 2

    파일 병합 및 id 필드를 기반으로 열 값 가져 오기

  3. 3

    여러 .txt 파일 가져 오기 및 병합

  4. 4

    R : 특정 열만 가져 오기 및 병합

  5. 5

    일괄 가져 오기 Parse 및 Swift 2

  6. 6

    while 및 foreach로 PDO 가져 오기

  7. 7

    MySQL로 CSV 가져 오기 및

  8. 8

    grequest로 게시 및 가져 오기

  9. 9

    OrderBy 및 LINQ 가져 오기

  10. 10

    MVC 및 UIKit 가져 오기

  11. 11

    CURL에서 데이터 가져 오기, 병합 및 내보내기

  12. 12

    OWLAPI 4 : 온톨로지 가져 오기 또는 병합?

  13. 13

    데이터 프레임 병합 및 추가 행 가져 오기. (Python / Pandas)

  14. 14

    가져 오기 및 로컬과의 인터페이스 병합이 작동하지 않습니까?

  15. 15

    HTTP 가져 오기 및 .xml 가져 오기가있는 AsyncTask

  16. 16

    jquery로 행 합계 가져 오기

  17. 17

    원격 tar 병렬화 및 ssh 파이프로 출력 가져 오기

  18. 18

    추가 가져 오기 및 추가, DialogFragment

  19. 19

    2D 배열 초기화로 가져 오기 및 설정

  20. 20

    PHP 및 RESTful API로 파일 가져 오기 및 보내기

  21. 21

    Laravel : 라디오 버튼에서 값 가져 오기 및 결합

  22. 22

    Python Unittest 및 가져 오기 오류

  23. 23

    다른 분기에 병합 된 분기 목록 가져 오기

  24. 24

    Excel VBA 매크로 : 통합 문서 가져 오기, 열 복사 및 가져온 통합 문서 반복

  25. 25

    로그인, 이름 가져 오기 및 로그 아웃 오류

  26. 26

    IOrderedQueryable 건너 뛰기 및 가져 오기

  27. 27

    Angular2 및 Typescript 가져 오기 오류 발생

  28. 28

    모듈 가져 오기 및 파일로드 오류

  29. 29

    Unity로 OBJ 가져 오기

뜨겁다태그

보관