[RUBY] Der Weg vom Git-Klon zum Aufbau der Umgebung und zur Teilnahme am Projekt (alles in vollem Umfang)

Ich möchte an einem Projekt einer anderen Person teilnehmen! Ich dachte, Git Clone vorerst, aber danach ist es ziemlich schmerzhaft. Wenn Sie unterwegs von Versionsübereinstimmungen (hier mit Ruby / MySQL) betroffen sind oder eine Zusammenarbeit planen, sollten die Teilnehmer ([am Ende des Artikels aufgeführt](# was die Erstellerseite tut)) ebenfalls im Voraus sein. Es gibt einige Dinge, die ich behalten muss, also habe ich die Reise vollständig aufgezeichnet. Ich würde mich freuen, wenn es einen Hinweis gibt, wenn auch nur teilweise.

Klonen Sie aus dem Git-Repository

Besuchen Sie die GitHub-Seite, der Sie beitreten möchten. Sie können die URL abrufen, indem Sie auf die Schaltfläche "Klonen oder Herunterladen" klicken. スクリーンショット 2020-06-13 12.17.02.png Wenn Sie diese URL kopieren und den folgenden Befehl in das Terminal eingeben, wird an Ihrem aktuellen Speicherort ein Ordner erstellt.

$ git clone https://github.com/xxxx/xxxx.git

Edelsteininstallation

Gehen Sie zum erstellten Ordner

$ cd xxxx

Wenn Sie "Bundle-Installation" durchführen

$ bundle install
Fetching gem metadata from https://rubygems.org/............
Fetching rake 13.0.1
Installing rake 13.0.1
Fetching concurrent-ruby 1.1.6
Installing concurrent-ruby 1.1.6
Fetching i18n 1.8.2
Installing i18n 1.8.2
Fetching minitest 5.14.0
Installing minitest 5.14.0
Fetching thread_safe 0.3.6
Installing thread_safe 0.3.6
Fetching tzinfo 1.2.7
(Weggelassen)

Im Idealfall wird es abgeschlossen, aber manchmal passiert es nicht.

Wenn die Ruby-Version nicht übereinstimmt

Wenn Sie versuchen, die Installation zu bündeln, wird möglicherweise Folgendes angezeigt:

rbenv: version `2.6.3' is not installed

Im obigen Fall ist Ruby Version 2.6.3 nicht installiert.

Sie können die Liste der installierbaren Elemente unten sehen.

$ rbenv install --list
Available versions:
  1.8.5-p52
  1.8.5-p113
  
(Weggelassen)

Wenn Sie nicht über die erforderliche Version verfügen, geben Sie den folgenden Befehl ein

$ brew upgrade rbenv ruby-build

Führen Sie die Installation durch.

$ rbenv install 2.6.3
ruby-build: using openssl from homebrew
Downloading ruby-2.6.3.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.3.tar.bz2
Installing ruby-2.6.3...
ruby-build: using readline from homebrew

Versuchen Sie anschließend "Bundle-Installation".

Wenn die Version des Bundlers nicht übereinstimmt

Wenn Sie versuchen, die Installation zu bündeln, wird möglicherweise die folgende Anzeige angezeigt.

Could not find 'bundler' (2.1.2) required by your /Users/xxx/projects/xxxx/Gemfile.lock. (Gem::GemNotFoundException)
To update to the latest version installed on your system, run `bundle update --bundler`.
To install the missing version, run `gem install bundler:2.1.2`

Führen Sie die Bundler Gem-Installation entsprechend der Anzeige durch.

$ gem install bundler:2.1.2
Fetching bundler-2.1.2.gem
Successfully installed bundler-2.1.2
Parsing documentation for bundler-2.1.2
Installing ri documentation for bundler-2.1.2
Done installing documentation for bundler after 4 seconds
1 gem installed

Nachdem Sie das oben Gesagte gesehen haben, versuchen Sie es mit "Bundle-Installation".

Darüber hinaus, wenn die DB (MySQL) -Version nicht übereinstimmt

Ich denke, dass die Bundle-Installation endlich Fortschritte gemacht hat und die folgende Anzeige erscheint.

An error occurred while installing mysql2 (0.5.3), and Bundler cannot
continue.
Make sure that `gem install mysql2 -v '0.5.3' --source 'https://rubygems.org/'`
succeeds before bundling.

Ich möchte nach der Anzeige eine MySQL-Gem-Installation durchführen, erhalte jedoch eine Reihe von Fehlern.

$ gem install mysql2 -v '0.5.3' --source 'https://rubygems.org/'
Building native extensions. This could take a while...
ERROR:  Error installing mysql2:
ERROR: Failed to build gem native extension.

(Weggelassen)

In diesem Fall habe ich mich auf Folgendes bezogen. (Vielen Dank.)

[Referenz] MySQL konnte nicht im Rails-Projekt im Bundle installiert werden

$ bundle config --local build.mysql2 "--with-ldflags=-L/usr/local/opt/openssl/lib --with-cppflags=-I/usr/local/opt/openssl/include"

Bereiten Sie die Datenbank vor

Die Datenbank wird unten erstellt.

$ rake db:create

Erstellen Sie als Nächstes Tabellen und Spalten. Wenn Sie Folgendes tun und es nicht funktioniert, kann es sein, dass Sie den Ersteller schnell fragen. Wenn der vergangene Erstellungs- / Hinzufügungs- / Löschprozess inkonsistent ist, funktioniert er nicht.

$ rake db:migrate

Wenn eine Seed-Datei (Anfangsdaten) vorhanden ist, führen Sie auch Folgendes aus.

$ rake db:seed

Was der Produzent macht

Wenn Sie Ihre Arbeit mit GitHub teilen möchten, sollte der Ersteller im Voraus Folgendes tun.

Master.key teilen

Teilen Sie den von der Person, die die App gestartet hat, lokal reservierten config / master.key mit den Teilnehmern. Die Teilnehmer erstellen dasselbe im selben Verzeichnis. Diese Datei wird normalerweise nicht auf Git erstellt, daher sollte sie nicht von der Person erstellt werden, die sie geklont hat. Vergessen Sie also nicht, es einzeln zu teilen.

Die Teilnehmer müssen in Manage Access (auf GitHub) enthalten sein.

Um zusammenzuarbeiten, müssen Sie Teilnehmer zu Einstellung> Zugriff verwalten auf der GitHub-Repository-Seite hinzufügen.

schließlich

Wie oben erwähnt, sind die Maßnahmen, die ich dieses Mal ergriffen habe, die wichtigsten, aber ich würde mich freuen, wenn es einen Hinweis gibt. Vielen Dank.

Recommended Posts

Der Weg vom Git-Klon zum Aufbau der Umgebung und zur Teilnahme am Projekt (alles in vollem Umfang)
Wie installiere ich die in Ubuntu verwendete Sprache und wie erstelle ich die Umgebung?
Von "Create mvn project" zu "Create remote repository in GitLab" bis "git in it"
Der Weg von JavaScript nach Java
Bestätigung und Umgestaltung des Flusses von der Anfrage zum Controller in [httpclient]
Verwendung von git mit der Leistung von jgit in einer Umgebung ohne git-Befehle
Tokoro habe ich in der Migration von Wicket 7 auf 8 umgeschrieben
In der Abbildung verstandene Java-Klassen und -Instanzen
In Java möchte ich mehrere angegebene Zeichen nur von Anfang bis Ende abschneiden.
Ich möchte den Inhalt von Assets in der mit capistrano erstellten Umgebung von Grund auf neu erstellen