blob: 9cde6d90989f6f0f086ab25e1090f04a860d1b55 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
#!/bin/bash
reposDirectory=/home/git/repositories
reposList=/home/git/repos.list
echo "1) Create a new repo"
echo "2) Delete a repo"
read -p "Choose an option: " option
if [[ $option == 1 ]];
then
read -p "What's the repo name? " repoName
read -p "What's the repo description? [default: ''] " repoDesc
# chronic hides output
if chronic git config user.name && chronic git config user.email;
then
username=$(git config user.name)
email="<$(git config user.email)>"
echo "Your git configuration has a username and email set:"
echo "Username: $username"
echo "Email: $email"
read -p "Set owner to your git config? [default: 'y'] (y/n) " usegc
if [[ $usegc == [yY] ]] || [[ -z $usegc ]];
then
repoOwner="$username $email"
echo "Author set to \"$repoOwner\""
fi
fi
if [[ $usegc == [nN] ]] || [[ -z $usegc ]];
then
read -p "What's the owner name? [default: ''] " repoOwner
fi
echo "Performing magic wizardry..."
echo "Adding repo to list..."
echo $repoName >> $reposList
echo "Creating $repoName directory and setting permissions..."
mkdir $reposDirectory/$repoName
chown git $reposDirectory/$repoName
echo "Initializing bare repository..."
git init --bare $reposDirectory/$repoName
echo "Setting repository owner..."
echo [gitweb] >> $reposDirectory/$repoName/config
echo "owner = $repoOwner" >> $reposDirectory/$repoName/config
echo "Setting repository description..."
echo -n "" > $reposDirectory/$repoName/description
if [[ -n "$repoDesc" ]];
then
echo "$repoDesc" >> $reposDirectory/$repoName/description
fi
echo "$repoName magically appeared!"
elif [[ $option == 2 ]];
then
read -p "What's the repo name? " repoName
echo "Performing magic wizardry..."
echo "Finding line in list..."
sed -i "/$repoName/d" $reposList
echo "Deleting $repoName directory..."
rm -rf $reposDirectory/$repoName
echo "$repoName has vanished!"
fi
|