- 1. 本日のお悩み
- 2. 本日の処方箋
- 2.1. .gitkeep
- 2.2. ローカルブランチで作成した Lambda 関数をワークフローでデプロイする方法【CodeCatalyst】
- 2.3. わかりやすいコミットメッセージ
- 2.4. [Unity]metaファイル追加のコミット漏れをGit Hooksで検知
- 2.5. node開発環境構築個人メモ
- 2.6. Git CLI – 2. Gitでバージョンを管理する_①
- 2.7. Gitでshallow cloneした後に特定のブランチをcheckoutしたい
- 2.8. 【Git/UE5】Git を用いた Unreal Engine のバージョン管理の始め方
- 2.9. 既存リポジトリの内容と履歴を新しいリポジトリに複製する方法
- 2.10. チーム開発でのGitの基本操作
- 2.11. Git-3 コミットについての詳細
- 2.12. 【GitHub】リポジトリ名/【GitLab】プロジェクト名をURLも併せて変更する
- 2.13. git fetchとは何か
- 2.14. githubの既存のリモートブランチ開発を別の環境で再開する方法
- 2.15. Gitを安心して使うために知っておきたいGitコマンドの動き git push編
- 2.16. Git-2 基本操作とコマンド
- 2.17. Git-1 基本概念
- 2.18. 「脱Git初心者」一歩差が出るgitconfigの設定
- 2.19. 【Git】Gitにパスを通す。(MacOS / zsh)
- 2.20. GitLabからGitHubへリモートリポジトリの向き先を変更する方法
空のディレクトリをGitHubへcommitする方法
本日のお悩み
gitへpushし動作確認をした際、ディレクトリがないよ〜と言われてしまったのでその時の対処方法を記載します。
作成したwebアプリをデプロイする際にプロジェクトをgitへpushするかと思います。
その際、特定のディレクトリを参照する機能があれば、もちろん、そこを探しに行くかと思いますが、今回そのディレクトリにはデータが入っていない空の状態でした。どうやらGitではディレクトリは作成してあっても**中身が空**だと無かったことにされてしまい、commitから除外されてしまうみたいです。
では、どうすれば空のディレクトリを認識しcommitしてくれるのか。すごく簡単です下記に記載しました。
本日の処方箋
じゃあどうすればいいかって、commitされなかった空のディレクトリに
.gitkeep
ただこれを作成するだけ!
そうすると、.gitignoreのファイルと同じようなファイルができるのでそれで初めてcommit対象になります。超簡単。下記例
“`shell-session
$ cd 空の対
ローカルブランチで作成した Lambda 関数をワークフローでデプロイする方法【CodeCatalyst】
## はじめに
この記事では、ローカルで作成した Lambda 関数を CodeCatalyst ワークフローでデプロイする方法について説明します。Lambda 関数をデプロイするために必要な設定やファイル構成、CDK プロジェクトの設定方法などについて詳しく説明します。実務でこのような方法で Lambda 関数をデプロイする機会があり、調べてみたところ情報が少なかったため、今回の記事を作成しました。
## 前提条件
– 実行環境:Codecatalyst
– CodeCatalyst にログインしていること
– CodeCatalyst でプロジェクトを作成していること
– ロールやセキュリティグループ、VPC などの設定が完了していること## Lambda デプロイプロジェクトのディレクトリ構成
このセクションでは、Lambda 関数のデプロイに関連するプロジェクトのディレクトリ構成について説明します。プロジェクト内の各ディレクトリやファイルが持つ役割を理解することで、プロジェクト全体の流れやデプロイプロセスの構造を把握しやすくなります。
### ディレクトリ構造
わかりやすいコミットメッセージ
## はじめに
僕が最近こんな感じで使うのが良さそうと思ったのをまとめてみました。
改善の余地はあると思うので、意見募集中です。
Git初心者は、[Gitのコミットメッセージの書き方](https://qiita.com/itosho/items/9565c6ad2ffc24c09364)の[ライト版](https://qiita.com/itosho/items/9565c6ad2ffc24c09364#ライト版)がオススメです。## Format
`
( ): ` – 例: `feat(ui): ログイン画面を実装`
– typeとtitleは必須、scopeは強く推奨
– 紐づくIssueがある場合は、その番号を`#`(例: `#10`)のような形式でtitleの前に付ける
– 3行目以降を書くかは任意### type
– どういった種類のコミットなのかが一目で分かるように、コミットの種別を書く
– [angular/CONTRIBUTING.md](https://github.com/angula
[Unity]metaファイル追加のコミット漏れをGit Hooksで検知
# はじめに
特にチームでのUnity開発において、metaファイルのコミット漏れがあると嬉しくないことが多いと思います。
そこで、**Git Hooks**を使って、metaファイルなしでは新規ファイル追加のコミットができないように検知してみようと思いました。※今回はmetaファイルの追加コミット漏れの検知であり、変更のコミット漏れは検知していない
# フックスクリプトの作成 pre-commit
.githooks/pre-commitを追加
“`bash:.githooks/pre-commit
#!/bin/bash# Assetsフォルダへのパス
assetPath=”Assets”
success=0# アントラックのファイルを取得
untrack_files=$(git ls-files –others –exclude-standard)# 新規に追加されたファイルのリストを取得
new_files=$(git diff –cached –name-only –diff-filter=A)
new_folders=()# 新規に追加さ
node開発環境構築個人メモ
久々にエンジニア仕事をやることになったので、昨年末に買った Mac の環境構築個人メモ。
Node.js のコード管理ができるようになるところまで。# Homebrew インストール
公式のインストールガイドを参照。https://brew.sh/ja/
> macOSをお使いの場合は新しい.pkgインストーラーをお試し下さい。
と書いてあるのでそうする。
[https://github.com/Homebrew/brew/releases/latest](https://github.com/Homebrew/brew/releases/latest) にアクセスすると現時点での最新バージョンは 4.2.18 らしい。
ページの一番下にある `Homebrew-4.2.18.pkg` をダウンロードしてインストール。これだけだと PATH が通らなかったので、スクリプトを実行する従来型インストールで最後に案内されるコマンドを実行。
“`
echo ‘eval “$(/opt/homebrew/bin/brew shellenv)”‘ >> ~/.zprofile
Git CLI – 2. Gitでバージョンを管理する_①
:high_brightness: 始めに
Gitの主な目的であるVersion管理について説明していきます。
今回の記事は「Git CLI – 2. Gitでバージョンを管理する」_①になります。目次
2-1 Git repositoryを作る
2-2 Versionを作る
2-3 Commit内容を確認する
2-4 git diff 一気にまとめよう
2-5 Versionを作る度、各段階のファイル状態を知る
2-6 作業を取り戻す「Git CLI – 2. Gitでバージョンを管理する」_①:目次の2-3まで
「Git CLI – 2. Gitでバージョンを管理する」_②:目次の2-4
「Git CLI – 2. Gitでバージョンを管理する」_③:目次の2-6まで2-1 Git repositoryを作る
——————————–
レポジトリを作りたいディレクトリに移動し、Gitを初期化すればそのときから該当ディレクトリにあるファイルのバージョンを管理できます。●Git初期化:git init
① ホームディレクトリにh
Gitでshallow cloneした後に特定のブランチをcheckoutしたい
## TL;DR
以下のようにshallow cloneしたローカルリポジトリに対し、
“`
git clone –depth 1 <リポジトリURL等>
“`以下のコマンドを実行すれば指定したブランチがcheckoutできるようになる
“`
git remote set-branches origin <ブランチ名>
git fetch origin <ブランチ名>
“`※ `origin` の箇所は適宜読み替える
## 少し詳しく
以下のようにshallow cloneしたローカルリポジトリがある
“`
git clone –depth 1 –single-branch -b <ブランチ名> <リポジトリURL等>
“`このままcheckoutしようとすると以下のようなエラーになる
“`
❯ git checkout master
error: pathspec ‘master’ did not match any file(s) known to git
“`何となくfetchすれば良いのでは?と思いやってみるも
【Git/UE5】Git を用いた Unreal Engine のバージョン管理の始め方
# はじめに
## 前提条件
– [GitHub](https://github.com/) アカウントを作成してある事
– [Git](https://git-scm.com/) をダウンロードしてある事
– [Git LFS](https://git-lfs.com/) をダウンロードしてある事
– [Sourcetree](https://www.sourcetreeapp.com/) をダウンロードして GitHub アカウントの認証などの初期設定を行ってある事
## テスト環境
– UE 5.1.1
– Visual Studio 2022
– [UEGitPlugin](https://github.com/ProjectBorealis/UEGitPlugin/) 3.15
# 手順
## GitHub でのリポジトリの作成
### 手順1
[GitHub](https://github.com/) に行き、右上の「**+**」から「**New repository**」を押す。
既存リポジトリの内容と履歴を新しいリポジトリに複製する方法
## はじめに
前回の記事では、GitLabからGitHubへのリモートリポジトリの向き先を変更する方法を紹介しました【https://qiita.com/hazure_engineer/items/8ddd12105ed4ae3d682a 】。今回は、その続きとして、既存のリポジトリの内容と履歴を新しいリポジトリに完全に複製する方法を説明します。自分はGitLabからAmazon CodeCatalystに移行する際にこの手順を使いましたが、他のプラットフォームに移行する際にも役立つと思います。
### 1. 既存のリポジトリをクローンする
まず、既存のリポジトリ(ソースリポジトリ)をローカルにクローンします。これは `–mirror` オプションを使用して行い、リポジトリ全体の複製を作成します。このオプションを使うと、すべてのブランチ、タグ、コミット履歴が含まれます。“`sh
git clone –mirror 既存のリポジトリのURL
cd クローンしたリポジトリの名前
“`### 2. 新しいリポジトリにプッシュする
クローンしたリポジトリを新しいリポジトリ
チーム開発でのGitの基本操作
# はじめに
今回、初めてチーム開発に関わる(といっても本当に触り程度)ことになったので、その際の基本操作と意味をまとめておきます。
よく使う操作ばかりですが、ブランチが多く、チームで使うブランチということで気をつけてやる必要がありました。(実際の操作は会社やチームにより全然違うと思います。)# 0. 全体のイメージ
リモートにあるブランチと自分のところ(local)にあるブランチを分けて考えておくと良いと思います。
リモートでもローカルでも同じ名前になるのでイメージしにくかったのですが、以下のことを意識したら整理できてきました。
– どのブランチにもリモートとローカルが存在していて、基本的にPCで操作しているのは全てローカルのブランチ
– ローカルの内容をリモートに当てたり、リモートからローカルに取り込んでいる
(逆に言えばリモートブランチはこれだけでしか基本使わない)
– リモートブランチのことは`origin`という名前で操作している
– ブランチを移動した先も基本はローカルで、そこでの編集はまたリモート(origin)に当てる必要がある
Git-3 コミットについての詳細
# 概要
コミットを実行した時、gitリポジトリにはblobオブジェクト、treeオブジェクト、commitオブジェクトが記録される。# コミットを時系列順に積み上げていく
![b.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985939/8c2e7688-e3d3-0fcc-3207-fff50e954ba4.png)# blobオブジェクト
ステージング領域で指定されたファイル1つ1つはそれぞれblobオブジェクトというファイルとしてgitリポジトリに保存される。これが各ファイルの実質的なフルバックアップとなる。また、それぞれのblobオブジェクトの識別子はファイルの内容からSHA-1で算出したハッシュ値となる。# treeオブジェクト
gitで管理しているプロジェクト内の全てのディレクトリの内容(ファイル一覧)と、各ファイルに対応するblobオブジェクトを紐づけて、コミットを実行した時点におけるプロジェクト全体の状態を作成する。各ファイルに対応するblobオブジェクトは、
–
【GitHub】リポジトリ名/【GitLab】プロジェクト名をURLも併せて変更する
## ざっくりやること
1. GitHub/GitLab上で、リポジトリ名/プロジェクト名を変更する
2. ローカルリポジトリの参照先URLを変更する
`git remote set-url origin [新URL]`## 詳細手順
### GitHub
#### 0.変更前
![0.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2257421/ffd2fff5-3277-69de-2189-89b21c46159e.png)![1_ぼかし.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2257421/98fdc505-674f-4fdf-aef3-1a19633030e1.png)
#### 1.リポジトリ名変更
GitHub > 対象のリポジトリ > Settings
![2_赤枠.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com
git fetchとは何か
## Git Fetchの概要
Git fetchは、リモートリポジトリから最新の情報をローカルリポジトリに取得するGitコマンドです。このコマンドは、リモートリポジトリにあるコミット、ファイル、ブランチの情報をローカルにダウンロードするために使用されますが、ローカルの作業ディレクトリのファイルを変更することはありません。つまり、fetchはリモートの状態を確認するための安全な方法であり、ローカルの作業には影響を与えません下記記事のイメージがわかりやすかったため、引用させていただきます。
引用元:[fetch|サル先生のGit入門](https://backlog.com/ja/git-tutorial/stepup/15/)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2040900/7103f30f-1ea2-e253-d065-ba9b4c6de7a3.png)## Git Fetchの動作
Git fetchを実行すると、リモートリポジトリの情報がローカルのリモート追
githubの既存のリモートブランチ開発を別の環境で再開する方法
# はじめに
@siida36さんの素晴らしい[チーム開発の記事](https://qiita.com/siida36/items/880d92559af9bd245c34)を読んで、よっしゃ頑張るぞー!!となっていたのですが、私は家と外出先で違うパソコンを使っていたために、しばしば`git pull`で苦戦していました。
ずっと、`git pull`で頑張ると思っていたのですが、コンフリクトは起こるし手順が多いしで大変でした(ずっとローカルブランチを作成してそこにpullしていた)。
もっと楽な方法をClaude3に教えてっもらったので、メモしておきます。
一応、手元の環境で動いたので、コマンドは間違っていないと思います。
詳しい方は、「こんなリスクあるよ」って感じで教えていただけると平身低頭して感謝します。m(_ _)m# 手順
既存のリモートブランチで開発を行う場合の手順は以下の通りです。
## リポジトリのクローン
まだリポジトリをローカル環境にクローンしていない場合は、クローンします。
“`
git clone https://github.com/your-u
Gitを安心して使うために知っておきたいGitコマンドの動き git push編
# はじめに
Gitを学び始めたばかりの方にとって実行するのに怖いコマンド筆頭は`git push`だと思います。1度プッシュしてリモートに変更を送信すると簡単には戻せないと聞いていたので、送信したいローカルブランチを対象のリモートブランチにちゃんと送信できるのか、とプッシュするときは毎回緊張していました。
これは、今考えると`git push`を実行したときに何がどのように更新されるかを理解していなかったことが原因だと思います。
この記事ではGit初心者向けに、`git push`コマンドに焦点を当てて実行されたときの動きをまとめています。前回はgit branch編で`git branch`コマンドに焦点を当てた記事を作成しました。良ければこちらも参照してみてください。
https://qiita.com/Sato_1021/items/41f4887ca29f7acddf22
# git pushコマンドとは
そもそも`git push`とはどのようなコマンドなのでしょうか。
ドキュメントには以下のように書いています。
“`
Updates remote refs us
Git-2 基本操作とコマンド
### 概要
Gitの基本操作はInit、 Change、 Staging、 Commitの4つである。
※筆者が勝手に考えた操作名称で、公式ではない。### 前提
gitコマンド実行時は、バージョン管理対象のプロジェクトをカレントディレクトリに設定する。### [Init] 空のgitリポジトリを新規作成する(.gitディレクトリを新規作成する)
`git init`このコマンドを実行しないとバージョン管理が開始できない。
尚、既にgitリポジトリがある場合はこのコマンドを実行しても空のgitリポジトリは作成されない。### [Change] ワーキングディレクトリでファイルの変更作業を行う
この工程ではgitコマンドは関係ない。ワーキングディレクトリ内でファイルの追加・編集・削除を行う。### [Staging] コミットしたいファイルをステージングする
`git add [ファイル1] [ファイル2] …`
ワーキングディレクトリ内のファイルから、次のコミット対象に含めるファイル(複数可)を指定する。次にコミットを実行したとき、gitリポジトリに記録される
Git-1 基本概念
# 概要
**git**は任意時点のファイルの状態を保存して時系列順に記録することで、過去の状態に遡ったり変更履歴を差分で確認できたりと色々便利なツールである。このようにファイルを管理することを**バージョン管理**という。最大の特徴・利点は同じプロジェクトに対して複数人の人が別々にファイルを編集していって、互いに邪魔することなく変更内容を確認・管理しながら最終的に統合できることである。
このような特徴・利点があり、ソフトウェア開発プロジェクトではファイルの変更管理のためにgitを使っておけば間違いない。
# 基本概念
**[1]** gitでバージョン管理する対象のプロジェクトのディレクトリを作成する
“`
project
`– [project files]
“`
**[2]** .gitディレクトリを作る。通称**gitリポジトリ**である。
“`
project
├── .git
`– [project files]
“`
**[3]** **gitリポジトリ**とは、任意の時点でのプロジェクト配下のファイル・ディレクトリの状態を保存し、そのバージョン管理
「脱Git初心者」一歩差が出るgitconfigの設定
# 有用なgit config
## はじめに
[So You Think You Know Git 2024](https://www.youtube.com/watch?v=aolI_Rz0ZqY&list=LL&index=10)をみてgitconfigの設定をいじることでかなり生産性が上げられそうだなと感じたので紹介されていたものを自分なりに取り入れてみたので防備録代わりに投稿します。
******## よく使う基本の設定
この辺はみんなやっていると思うので詳細は割愛。“`shell
username=”sigma”
usermail=”example@gmail.com”
git config –global user.name “${username}”
git config –global user.email “${uesremail}”git config –global color.ui auto
git config –global core.editor vim # コミットメッセージの修正に使うエディタをvimにする
git confi
【Git】Gitにパスを通す。(MacOS / zsh)
今回はGitに環境変数パスを通すやり方についての備忘録です。
## 私のGit使用環境
■私の開発環境
PC:MacOS
使用シェル:zsh
■Gitの使用環境は大きく分けて2つあります。
– 1: 元々MacOSにすでにインストールされている”Git”
– 2: Homebrewという”macOS用のパッケージマネージャーでインストールしたGit”(私の現在の環境です)元々「1:」のGit環境でGitを使っていました。
ですが『効率が悪い〜…』と思ったことがあって、途中で「2:」の環境に切り替えました。![homebrew.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/338535/be3e8ab3-3093-5aee-5488-a5eaca3ce7b7.png)
※現在の環境## 現在の環境のメリット
– gitのアップデートが楽(Homebrewのコマンド1行だけで済む。)
– Homebrewが色々と便利。
– git commit時にGitエディタが開かなかった
GitLabからGitHubへリモートリポジトリの向き先を変更する方法
## はじめに
個人開発でGitLabで管理していたプロジェクトをGithubに移行したく、方法を調べたので備忘録として記事に残します。この記事では、既にGitLabに設定されているリモートリポジトリの向き先をGitHubに変更する手順を紹介します。
## 1. 現在のリモートリポジトリを確認
まず、現在設定されているリモートリポジトリの状態を確認します。これは `git remote -v` コマンドで行います。このコマンドは、設定されているリモートリポジトリの名前とURLを表示します。
“`bash
git remote -v
“`出力例:
“`
origin https://gitlab.com/username/project.git (fetch)
origin https://gitlab.com/username/project.git (push)
“`## 2. リモートリポジトリのURLを変更
次に、リモートリポジトリのURLをGitHubのものに変更します。これには `git remote set-url` コマンドを使用します。`