6799c7e00d
Summary: When people are working off of a rocksdb fork, i.e. when their 'origin' points to github.com/<username>/rocksdb, the script creates a new branch and pushes to their origin. The new branch created by this script should instead be pushed to github.com/facebook/rocksdb. Many people might have named facebook/rocksdb remote as 'upstream' (or something else). This fix provides an option to specify the remote to push the branch to. The default is still 'origin' More context: When I created 5.4 branch using this script, it got pushed to sagar0/rocksdb instead of facebook/rocksdb, as I was working off of a fork. My 'origin' was pointing to sagar0/rocksdb. My 'upstream' was set to 'facebook/rocksdb'. So, I had to manually push the branch to my 'upstream'. Closes https://github.com/facebook/rocksdb/pull/2156 Differential Revision: D4885333 Pulled By: sagar0 fbshipit-source-id: 9410eab5bd9bbefc340059800bd6b8434406729d
54 lines
1.4 KiB
Bash
Executable File
54 lines
1.4 KiB
Bash
Executable File
#!/bin/bash
|
|
# Copyright (c) 2011-present, Facebook, Inc. All rights reserved.
|
|
# This source code is licensed under the BSD-style license found in the
|
|
# LICENSE file in the root directory of this source tree. An additional grant
|
|
# of patent rights can be found in the PATENTS file in the same directory.
|
|
|
|
set -e
|
|
if [ -z "$GIT" ]
|
|
then
|
|
GIT="git"
|
|
fi
|
|
|
|
# Print out the colored progress info so that it can be brainlessly
|
|
# distinguished by users.
|
|
function title() {
|
|
echo -e "\033[1;32m$*\033[0m"
|
|
}
|
|
|
|
usage="Create new RocksDB version and prepare it for the release process\n"
|
|
usage+="USAGE: ./make_new_version.sh <version> [<remote>]\n"
|
|
usage+=" version: specify a version without '.fb' suffix (e.g. 5.4).\n"
|
|
usage+=" remote: name of the remote to push the branch to (default: origin)."
|
|
|
|
# -- Pre-check
|
|
if [[ $# < 1 ]]; then
|
|
echo -e $usage
|
|
exit 1
|
|
fi
|
|
|
|
ROCKSDB_VERSION=$1
|
|
|
|
REMOTE="origin"
|
|
if [[ $# > 1 ]]; then
|
|
REMOTE=$2
|
|
fi
|
|
|
|
GIT_BRANCH=`git rev-parse --abbrev-ref HEAD`
|
|
echo $GIT_BRANCH
|
|
|
|
if [ $GIT_BRANCH != "master" ]; then
|
|
echo "Error: Current branch is '$GIT_BRANCH', Please switch to master branch."
|
|
exit 1
|
|
fi
|
|
|
|
title "Adding new tag for this release ..."
|
|
BRANCH="$ROCKSDB_VERSION.fb"
|
|
$GIT checkout -b $BRANCH
|
|
|
|
# Setting up the proxy for remote repo access
|
|
title "Pushing new branch to remote repo ..."
|
|
git push $REMOTE --set-upstream $BRANCH
|
|
|
|
title "Branch $BRANCH is pushed to github;"
|