Patrick Steinhardt | e7da938 | 2024-06-14 08:50:23 +0200 | [diff] [blame] | 1 | #define USE_THE_REPOSITORY_VARIABLE |
| 2 | |
Nguyễn Thái Ngọc Duy | 9080e75 | 2018-03-24 08:44:45 +0100 | [diff] [blame] | 3 | #include "test-tool.h" |
Elijah Newren | 41771fa | 2023-02-24 00:09:27 +0000 | [diff] [blame] | 4 | #include "hex.h" |
Elijah Newren | d4ff207 | 2023-04-22 20:17:15 +0000 | [diff] [blame] | 5 | #include "match-trees.h" |
Elijah Newren | dabab1d | 2023-04-11 00:41:49 -0700 | [diff] [blame] | 6 | #include "object-name.h" |
Elijah Newren | d1cbe1e | 2023-04-22 20:17:20 +0000 | [diff] [blame] | 7 | #include "repository.h" |
Elijah Newren | e38da48 | 2023-03-21 06:26:05 +0000 | [diff] [blame] | 8 | #include "setup.h" |
Junio C Hamano | 68faf68 | 2007-02-15 16:32:45 -0800 | [diff] [blame] | 9 | #include "tree.h" |
| 10 | |
Jeff King | 126e3b3 | 2023-03-28 16:57:25 -0400 | [diff] [blame] | 11 | int cmd__match_trees(int ac UNUSED, const char **av) |
Junio C Hamano | 68faf68 | 2007-02-15 16:32:45 -0800 | [diff] [blame] | 12 | { |
brian m. carlson | c9baaf9 | 2016-04-17 23:10:37 +0000 | [diff] [blame] | 13 | struct object_id hash1, hash2, shifted; |
Junio C Hamano | 68faf68 | 2007-02-15 16:32:45 -0800 | [diff] [blame] | 14 | struct tree *one, *two; |
| 15 | |
Jeff King | 11e6b3f | 2016-03-05 17:16:50 -0500 | [diff] [blame] | 16 | setup_git_directory(); |
| 17 | |
Ævar Arnfjörð Bjarmason | d850b7a | 2023-03-28 15:58:46 +0200 | [diff] [blame] | 18 | if (repo_get_oid(the_repository, av[1], &hash1)) |
Junio C Hamano | 68faf68 | 2007-02-15 16:32:45 -0800 | [diff] [blame] | 19 | die("cannot parse %s as an object name", av[1]); |
Ævar Arnfjörð Bjarmason | d850b7a | 2023-03-28 15:58:46 +0200 | [diff] [blame] | 20 | if (repo_get_oid(the_repository, av[2], &hash2)) |
Junio C Hamano | 68faf68 | 2007-02-15 16:32:45 -0800 | [diff] [blame] | 21 | die("cannot parse %s as an object name", av[2]); |
brian m. carlson | a9dbc17 | 2017-05-06 22:10:37 +0000 | [diff] [blame] | 22 | one = parse_tree_indirect(&hash1); |
Junio C Hamano | 68faf68 | 2007-02-15 16:32:45 -0800 | [diff] [blame] | 23 | if (!one) |
Richard Hansen | bb8040f | 2013-09-04 15:04:30 -0400 | [diff] [blame] | 24 | die("not a tree-ish %s", av[1]); |
brian m. carlson | a9dbc17 | 2017-05-06 22:10:37 +0000 | [diff] [blame] | 25 | two = parse_tree_indirect(&hash2); |
Junio C Hamano | 68faf68 | 2007-02-15 16:32:45 -0800 | [diff] [blame] | 26 | if (!two) |
Richard Hansen | bb8040f | 2013-09-04 15:04:30 -0400 | [diff] [blame] | 27 | die("not a tree-ish %s", av[2]); |
Junio C Hamano | 68faf68 | 2007-02-15 16:32:45 -0800 | [diff] [blame] | 28 | |
Nguyễn Thái Ngọc Duy | 90d3405 | 2019-06-27 16:28:51 +0700 | [diff] [blame] | 29 | shift_tree(the_repository, &one->object.oid, &two->object.oid, &shifted, -1); |
brian m. carlson | c9baaf9 | 2016-04-17 23:10:37 +0000 | [diff] [blame] | 30 | printf("shifted: %s\n", oid_to_hex(&shifted)); |
Junio C Hamano | 68faf68 | 2007-02-15 16:32:45 -0800 | [diff] [blame] | 31 | |
Ævar Arnfjörð Bjarmason | 338abb0 | 2021-06-08 12:48:03 +0200 | [diff] [blame] | 32 | return 0; |
Junio C Hamano | 68faf68 | 2007-02-15 16:32:45 -0800 | [diff] [blame] | 33 | } |