mirror of
https://github.com/Kitware/CMake.git
synced 2025-05-08 22:37:04 +08:00

Changes in commit 5129e97285 (setup-user: switch to git-var to check if username and e-mail are set, 2019-11-24, v3.17.0-rc1~379^2) now require the `rev` and `cut` tools to be available. Revise the logic to use that approach only when they are available, and otherwise fall back to the previous more portable approach. Co-Author: Brad King <brad.king@kitware.com>
47 lines
1.6 KiB
Bash
Executable File
47 lines
1.6 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
#=============================================================================
|
|
# Copyright 2010-2012 Kitware, Inc.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
#=============================================================================
|
|
|
|
# Run this script to configure Git user info in this repository.
|
|
|
|
# Project configuration instructions: NONE
|
|
|
|
for (( ; ; )); do
|
|
if type -p rev >/dev/null && type -p cut >/dev/null; then
|
|
ident="$(git var GIT_AUTHOR_IDENT 2>/dev/null | rev | cut -d' ' -f3- | rev)"
|
|
elif user_name=$(git config --get user.name) &&
|
|
user_email=$(git config --get user.email); then
|
|
ident="$user_name <$user_email>"
|
|
else
|
|
ident=""
|
|
fi
|
|
|
|
if test -n "$ident"; then
|
|
echo 'Your commits will record as Author:
|
|
|
|
'"$ident"'
|
|
' &&
|
|
read -ep 'Is the author name and email address above correct? [Y/n] ' correct &&
|
|
if test "$correct" != "n" -a "$correct" != "N"; then
|
|
break
|
|
fi
|
|
fi &&
|
|
read -ep 'Enter your full name e.g. "John Doe": ' name &&
|
|
read -ep 'Enter your email address e.g. "john@gmail.com": ' email &&
|
|
git config user.name "$name" &&
|
|
git config user.email "$email"
|
|
done
|