2025年12月15日(月)の活動日誌です。
Webページ管理方法変更
新規アプリ開発でAngularを使用しようと検討中であったため
Webページ自体をGitにて管理するように対応。
管理方法の変更
元々はローカルで保持し、修正したファイルをWinSCPでそれぞれFTP転送をしていました。
ファイル数が少なければその運用でも問題ないのですが、
今後、ファイル数が増えてくると管理も煩雑になり、転送漏れも発生する懸念もありました。
そこで、以前会社で使っていたGitを導入してみることに。
仕事では環境構築された状態で使っていることが多く、最初から構築するのは初めてでした。
Gitの詳しい操作方法とか仕組みは色んなサイトで解説されているので、
ここでは作業ログとか自分の理解を深める為のメモ的な感じに。
ローカル環境設定
まず、ローカル環境としてはGitをインストールし、
次にエディタやターミナルがついているVSCodeをインストール。
VSCodeでフォルダを開こうとすると、以下の様なメッセージが表示されるので
信頼しますのボタンをクリック(画像のリンクは適当なフォルダ)

左メニューの「ソース管理」で「リポジトリを初期化する」をクリックし、リポジトリの初期化処理。

ソース管理の変更欄に変更があったファイルが表示されるので、「+」ボタンを押してコミットの対象に追加
さらに、コミットメッセージを記載して「コミット」ボタンを押すことでローカル上でのコミットが完了。

と思ったけど、Gitを始めて使う環境ではGitのユーザー名やメールアドレスの登録が必要で、
未設定の状態でコミットを行うとエラーとなりました。
どこの誰が修正したかは多人数で開発する場合は必須情報ですからね。
以下のコマンドでユーザー名とメールアドレスを登録
git config --global user.name "名前"
git config --global user.email "メールアドレス"
コミットが成功するとソース管理のグラフ欄にコミット履歴が表示されて、それぞれのコミットを見ることで、何の修正の時に何のファイルの何処が修正されたのかを見ることが出来る。
小規模の開発ではそこまで必要ではないけど、大規模で長期間、多人数で修正する場合にはとても役立つ機能。必要に応じて昔のコミットの状態に戻すことも可能。
ブランチで機能やバージョンによって枝分かれしたソースに対しても必要な修正分のコミットのみを反映させることも。

修正した内容についてはこんな感じで色付きで教えてくれる。

GitHubの登録・設定
Gitを基盤としたソフトウェア開発のプラットフォームである「GitHub」でアカウントを作成
GoogleアカウントやAppleアカウントがあれば簡単に登録可能。
それらがなかったり連携しない場合はメールアドレスでの登録も可能。


アカウントが出来たら、開発ソースを管理するためのリポジトリを作成。
左上のメニューから「Repositories」を選択。
変更後の画面の右上にある「New repository」ボタンをクリック。


「Create a new repository」画面が表示されるので
リポジトリ名や説明を入力。
Visibilityで全体に公開するPublicか全体に公開しないPrivateかを選ぶことが出来ます。
今回は非公開なのでPrivate
あとはREADMEとか.gitignore(コミットの対象外にするファイルを設定するファイル)、LICENSE(Public公開時にプロジェクトの利用可否を記載するファイル)を追加するか設定が可能です。
.gitignoreは後から必要があれば追加、非公開のためLICENSEは不要なため、今回はREADMEだけ作りました。
(別にREADMEも現状、書く必要もないのだけども)

ローカルとGitHubの連携と反映
ローカル側とGitHub側の設定が出来たら、ローカル側にて
以下のコマンドを実行してGitHubとの連携させます。
git remote add origin [GitHubで作成したリポジトリのURL]
これでPush(反映コマンド)を行った際に、指定したURLのリポジトリにはコミットした内容が
反映されるようになります。
ただ、今回はGitHub上でREADMEを追加しており、その際にGitHub上でコミットされているので、ローカル環境とGitHubでコミットの状態が異なっています。
そのため、Pushを行うと、不整合な状態になってエラーが発生しPushが失敗してしまいます。
なので、GitHub側のコミット情報をローカル側に反映させるPullを行います。
その際に、単純にGitHub側のコミット情報を反映させるだけならPullだけで問題ないですが、
GitHub側とローカル側の両方でコミット情報が異なっている場合は、リベースを行って
GitHub側の修正が行われてからローカル側の修正を行ったようにする必要があります。
git pull origin main --rebase
リベースする際に、もしGitHub側とローカル側で同じファイルの同じ個所を修正していると
修正のコンフリクト(衝突)が発生します。
その場合は、修正内容を確認してどの修正が正しいのかを判断し、必要に応じて変更しなければなりません。
中々集中力が必要な作業なので、多人数開発を行う上では特に要注意。
今回はREADMEが追加されただけなのでコンフリクトは発生なしでリベースすることが出来ました。
リベースが完了できたら、最後にPushして修正したコミット情報をGitHub側に連携します。
git push origin main
GitHubがPrivate設定の場合は、初回Push時にGitHubの認証画面が表示されます。
「Authorize git-ecosystem」ボタンを押して認証すれば、GitHubのリポジトリにPushすることが
出来ます。

Push後にGitHubのリポジトリを確認すると、無事に修正したファイルが格納されていました。


コメント