From 89b581c6fa663d8a9db728d98e7f56c83c991444 Mon Sep 17 00:00:00 2001 From: Sean Whitton Date: Tue, 11 Feb 2020 14:34:08 -0700 Subject: rework script into API::GitForge generic interface Signed-off-by: Sean Whitton --- bin/git-clean-forge-repo | 74 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100755 bin/git-clean-forge-repo (limited to 'bin/git-clean-forge-repo') diff --git a/bin/git-clean-forge-repo b/bin/git-clean-forge-repo new file mode 100755 index 0000000..57afb14 --- /dev/null +++ b/bin/git-clean-forge-repo @@ -0,0 +1,74 @@ +#!/usr/bin/perl +# PODNAME: git-clean-forge-repo +# ABSTRACT: create repos on git forges with optional features disabled +# +# Copyright (C) 2017, 2020 Sean Whitton +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +=head1 SYNOPSIS + +B [B<--remote=>I] + +=head1 DESCRIPTION + +Creates repos on git forges like GitHub and GitLab, and disables all +optional features of those forges. Useful for when you want to use +the forge only as an ordinary git host, and nothing more. + +=head1 OPTIONS + +=over 4 + +=item B<--remote=>I + +Specify the name of the git remote you will use to push changes to the +repository created by this script. You should already have created +this git remote; see "EXAMPLE" below. Defaults to "origin". + +=back + +=head1 EXAMPLE + +=over 4 + + % git init + % # work on new project + % git remote add origin https://salsa.debian.org/spwhitton/foo + % git clean-forge-repo + % git push -u origin master + +=back + +=head1 FILES + +=over 4 + +=item $XDG_CONFIG_HOME/.config/gitforge/access_tokens/I + +Where I is the domain name of the git forge +(e.g. "github.com", "salsa.debian.org"), this file should contain an +API access token to log in to your account at the git forge. If +unset, $XDG_CONFIG_HOME defaults to ~/.config. + +=back + +=head1 SEE ALSO + +git-clean-forge-fork(1) + +=cut + +use App::git::clean_forge_repo; +exit App::git::clean_forge_repo->main; -- cgit v1.2.3