Ich denke, Git und GitHub sind bei der Entwicklung zu unverzichtbaren Werkzeugen geworden.
Erstellen Sie ein Verzeichnis lokal, erstellen Sie eine README-Datei mit "git init", "git add", "git commit -m" Initial Commit ", greifen Sie auf GitHub zu, erstellen Sie ein Repository," git remote " add origin [email protected]: Kopiere den Teil von hoge / fuga.git und füge ihn ein, führe den Befehl aus und git push` ~
Es ist eine Reihe von störenden Abläufen, nicht wahr?
Jetzt erstellen wir ein CLI-Tool, das sie automatisiert.
Die Verzeichnisstruktur ist wie folgt. Wenn Sie gem in der globalen Umgebung installieren können, ohne Gemfile zu verwenden, können Sie einfach "gem install ○○" verwenden.
[auto_github_repo]
|- .commands.sh
|- .env
|- github.rb
|- Gemfile #Später hinzugefügt
|- Gemfile.lock #Später hinzugefügt
Verwenden Sie ein Juwel namens Octokit, um von Ruby aus auf GitHub zuzugreifen und ein Repository zu erstellen. Zusätzlich zum Erstellen eines Repositorys werden verschiedene APIs vorbereitet und es ist interessant, daher sollten Sie sich diese ansehen. Hier ist eine Liste verschiedener Methoden. https://www.rubydoc.info/github/pengwynn/octokit/Octokit
Vielleicht verwenden viele Leute, die als Ingenieure in Unternehmen arbeiten, GitHub aus Sicherheitsgründen als zweistufige Zertifizierung. Dieses Mal habe ich es darauf basierend erstellt, und ich werde es weiter unten erläutern, da es erforderlich ist, das Zugriffstoken von GitHub separat zu erwerben, um die zweistufige Authentifizierung aus dem Ruby-Code zu übergeben.
Gehen Sie zuerst zu Ihrem GitHub, klicken Sie auf das Symbol oben rechts, öffnen Sie "Einstellungen" und Sie werden zur folgenden Seite weitergeleitet. Klicken Sie dann unten links auf "Entwicklereinstellungen".
Anschließend werden Sie zur folgenden Seite weitergeleitet. Fahren Sie daher mit "Persönliche Zugriffstoken" fort.
Klicken Sie hier auf "Neuen Token generieren"
Anschließend werden Sie zur folgenden Seite weitergeleitet. Schreiben Sie daher den Verwendungszweck in den Teil "Hinweis" und überprüfen Sie den Teil "Repo". Dieses Mal reicht Repo für die Behörde aus, aber es scheint, dass ein praktisches CLI-Tool erstellt werden kann, wenn andere Teile gut verwendet werden können. Wenn Sie es sich leisten können, versuchen Sie es bitte. Klicken Sie dann unten auf "Token generieren", um zu der Seite zu gelangen, auf der das Zugriffstoken angezeigt wird. Kopieren Sie es also.
Erstellen Sie Informationen wie das zuvor in der ENV-Datei erstellte Zugriffstoken. Nur für den persönlichen Gebrauch ist es in Ordnung, festen Code zu schreiben.
.env:.env
USERNAME='GitHub-Benutzername'
GITHUB_ACCESS_TOKEN='Kopiertes Zugriffstoken'
FILEPATH='Geben Sie das Verzeichnis an, in dem Sie ein Projekt erstellen möchten' #Im Fall von I./Users/Mac-Benutzername/Program/Es wird gesagt.
Jetzt erstellen wir eine CLI-App.
Gemfile erstellen
Terminal
$ bundle init
Dadurch wird eine Gem-Datei erstellt. Fügen Sie daher den folgenden Gem hinzu.
Gemfile
# frozen_string_literal: true
source "https://rubygems.org"
git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }
gem 'octokit', '~> 4.0'
gem 'dotenv'
Installieren Sie Gem
Terminal
$ bundle
Nachdem wir fertig sind, schreiben wir ein Shell-Skript, das vom Terminal ausgeführt wird, und Ruby-Code, um mit GitHub zu arbeiten.
sh:.commands.sh
#!/bin/zsh #Ändern Sie für Bash dieses "zsh" in Bash
function create() {
source .env #Umgebungsvariablen lesen
ruby github.rb $1 #Führen Sie die Ruby-Datei aus$1 ist das im Befehl übergebene Argument (Name des zu erstellenden Verzeichnisses)
cd $FILEPATH$1 #Wechseln Sie in das Verzeichnis des erstellten Projekts
git init
git remote add origin [email protected]:$USERNAME/$1.git
touch README.md
git add .
git commit -m 'Initial Commit'
git push -u origin master
code . #Starten Sie VS Code
}
Jetzt können Sie dieses CLI-Tool vom Terminal aus ausführen, die Ruby-Datei ausführen und sogar den Git-Befehl ausführen.
Als nächstes werden wir mit GitHub mit Ruby verknüpfen.
github.rb
require 'octokit'
require 'dotenv'
# .Env-Datei lesen
Dotenv.load '.env'
#Weisen Sie Variablen Umgebungsvariablen zu
github_access_token = ENV['GITHUB_ACCESS_TOKEN']
path = ENV['FILEPATH']
#Machen Sie das Verzeichnis einmal oben
system('cd')
#Rufen Sie das Argument (zu erstellender Projektname) aus dem Terminalbefehl ab
folder_name = ARGV[0].to_s
Dir.mkdir(path + folder_name)
#Arbeite mit GitHub an Octokit
client = Octokit::Client.new(access_token: github_access_token)
client.user.login
client.create_repository(folder_name)
puts "Succesfully created repository #{folder_name}"
Damit ist die CLI-App abgeschlossen.
Lassen Sie uns das Projekt erstellen, das Sie vom Terminal aus erstellen möchten.
Terminal
$ source .commands.sh
$create Der Name des Projekts, das Sie erstellen möchten
Wenn das angegebene Projekt im GitHub-Repository erstellt wird, wird das aktuelle Verzeichnis in das Verzeichnis mit dem Projektnamen verschoben und VS-Code kann automatisch gestartet werden. Dies ist erfolgreich.
Wir hoffen, dass es als Starthilfe für die Entwicklung nützlich sein wird.
Recommended Posts