1# git-squash-merge tool 2 3`git-squash-merge` is a bash script to help squash merge a given branch into the current branch. This tool is helpful for synchronizing git repositories which work with `gerrit`. 4 5This command squash merges all commits from a given branch into the current branch. By default the changes are committed with a commit message containing the list of all squashed commits. 6 7## Syntax 8 9``` 10git-squash-merge [--no-list] [--no-commit] <branch> [<commit msg>]" 11``` 12 13## Parameters 14 15- `<branch>` specifies the name of branch to merge into current branch. 16- `<commit msg>` is an optional parameter specifying text to add to the commit message. 17 18## Options 19 20- `--no-list` when used the commit message will not include the list of squashed commits. 21- `--no-commit` when used, the tool squashes and stages the changes but does not commit" 22 23## Example of Use 24 25``` 26~/sw/openthread $ ./tools/gerrit/git-squash-merge.sh github/master "OpenThread GitHub sync" 27commit 977287e73a3fcae297306b1e68da50d4bbee0d14 (HEAD) 28Author: Abtin Keshavarzian <abtink@google.com> 29Date: Tue Aug 14 14:53:33 2018 -0700 30 31 Squash merge 'github/master' into 'HEAD' 32 33 OpenThread GitHub sync 34 35 3acd900bd [message] update comment/documentation (#2903) 36 2aa335144 [mle] fix logging at NOTE level (#2933) 37 a9932027f [toranj] test case for adding IPv6 addresses with same prefix on multiple nodes (#2915) 38 c097cd2d3 [mle] remove unused LeaderDataTlv from HandleChildUpdateRequest (#2936) 39 7be61df6e [message-info] remove unnecessary memset initialization (#2937) 40 bcfa7edff [ip6] ensure slaac addresses are added back after reset (#2938) 41 412f9740b [tlv] remove unnecessary user-specified constructor (#2940) 42 ba4b238a0 [link-quality] explicitly clear link quality for new child/router (#2941) 43 601b99b39 [android] use spi instead of uart (#2942) 44 d67c4e2f6 [ncp] include prop set support for THREAD_CHILD_TIMEOUT in MTD build (#2943) 45 44e583a55 [toranj] add new method to finalize all nodes at end of each test (#2930) 46 c551e3035 [posix] handle signals SIGHUP or SIGTERM and exit (#2930) 47 1ca81fbb1 [ncp] add support for child supervision in spinel/NcpBase (#2939) 48 f0bb0982e [examples] change example platform namespacing (#2927) 49 f089fc8e2 [gcc8] resolve compiler errors (#2944) 50 a9d32b7be [ncp] add support for Commissioner APIs in spinel and NCP (#2911) 51 8efb3c50e [meshcop] implement commissioning UDP proxy (#2926) 52 492f0c3b1 [harness-automation] update read method for TopologyConfig.txt format change (#2950) 53 e181f1f98 [posix-app] fix diag issues of radio only mode (#2948) 54 90ee0a4d6 [ncp] add joiner spinel support (#2877) 55 9d585edc4 [types] move types into specific headers (#2946) 56 101e24337 [nrf52840] fix default parameters of FEM (#2945) 57 c8d06c402 [efr32] fix em_system.h include (#2956) 58 d2e59fd64 [posix-app] fix getting tx power (#2957) 59 0c07c53ce [platform] attach timestamp in promiscuous mode (#2954) 60 61 Change-Id: I2fd7b537fc1e0251082f091cb897b9ac25e105dd 62 63Successfully squash merged branch 'github/master' into 'HEAD' 64``` 65