1/* 2 * Implementation of git-merge-ours.sh as builtin 3 * 4 * Copyright (c) 2007 Thomas Harning Jr 5 * Original: 6 * Original Copyright (c) 2005 Junio C Hamano 7 * 8 * Pretend we resolved the heads, but declare our tree trumps everybody else. 9 */ 10#define USE_THE_INDEX_COMPATIBILITY_MACROS 11#include"git-compat-util.h" 12#include"builtin.h" 13#include"diff.h" 14 15static const char builtin_merge_ours_usage[] = 16"git merge-ours <base>... -- HEAD <remote>..."; 17 18intcmd_merge_ours(int argc,const char**argv,const char*prefix) 19{ 20if(argc ==2&& !strcmp(argv[1],"-h")) 21usage(builtin_merge_ours_usage); 22 23/* 24 * The contents of the current index becomes the tree we 25 * commit. The index must match HEAD, or this merge cannot go 26 * through. 27 */ 28if(read_cache() <0) 29die_errno("read_cache failed"); 30if(index_differs_from(the_repository,"HEAD", NULL,0)) 31exit(2); 32exit(0); 33}