今さら聞けないGit 

今さら聞けないGit 

Git入門:タグとサブモジュール

Gitのタグとサブモジュールは、バージョン管理と外部リポジトリの統合を効率的に行うための便利な機能です。この記事では、タグとサブモジュールの基本について記述します。

### 目次

1. タグの基本
2. タグの作成と管理
3. サブモジュールの基本
4. サブモジュールの使用方法

### 1. タグの基本

タグは、特定のコミットを固定して参照するための名前付きポインタです。リリースバージョンを記録する際に便利です。

### 2. タグの作成と管理

### タグの作成

軽量タグを作成するには、以下のコマンドを使用します。

“`bash
git tag <タグ名>
“`

例:

“`bash
git tag v1.0
“`

注釈付きタグを作成するには、`-a`オプションを使用します。

“`bash
git tag -a <タグ名> -m “タグメッセージ”
“`

例:

“`bash
git tag -a v1.0 -m “Initial release”
“`

### タグの一覧表示

すべてのタグを一覧表示するには、以下のコマンドを使用します。

元記事を表示

Git入門:より高度な機能と具体的なワークフロー

Gitには、基本的な機能に加えて、より高度な機能や特定のワークフローに適したツールが豊富に揃っています。この記事では、Gitの高度な機能と具体的なワークフローについて記述します。

### 目次

1. Gitフロー
2. インタラクティブリベース
3. Gitフック
4. サブモジュールの使い方

### 1. Gitフロー

Gitフローは、複雑な開発プロジェクトを管理するためのブランチングモデルです。以下のようなブランチを使用します。

– **mainブランチ**: 常に安定したコードを保持する。
– **developブランチ**: 開発中のコードを保持する。
– **featureブランチ**: 新機能の開発を行う。
– **releaseブランチ**: 次のリリース準備を行う。
– **hotfixブランチ**: リリース後の緊急修正を行う。

### Gitフローの基本コマンド

Gitフローのツールをインストールするには、以下のコマンドを使用します。

“`bash
brew install git-flow
“`

Gitフローを初期化するには、以下のコマンドを

元記事を表示

Git入門:リモートリポジトリ管理とチーム開発のベストプラクティス

Gitのリモートリポジトリ管理は、チーム開発において重要な役割を果たします。また、効率的なチーム開発のためのベストプラクティスも理解しておく必要があります。この記事では、リモートリポジトリ管理の基本と、チーム開発でのベストプラクティスについて記述します。

### 目次

1. リモートリポジトリの基本
2. リモートリポジトリの設定と使用
3. チーム開発のベストプラクティス

### 1. リモートリポジトリの基本

リモートリポジトリは、インターネット上にホスティングされたGitリポジトリであり、チームメンバーが共同で作業するために使用します。GitHubやGitLab、Bitbucketなどが代表的なホスティングサービスです。

### 2. リモートリポジトリの設定と使用

### リモートリポジトリの追加

リモートリポジトリを追加するには、以下のコマンドを使用します。

“`bash
git remote add origin <リモートリポジトリのURL>
“`

例:

“`bash
git remote add origin https://github.co

元記事を表示

Git操作を簡単に!任天堂スイッチ操作で考えてみた

# はじめに
**Git**は一見すると何をやっているのかなかなかイメージがつかず難しく見えます。しかし**Git操作**が何をしてるのか理解せずに使うと、とんでもないことになってしまう可能性もあります。

本記事では、**Git操作**を**任天堂スイッチ操作**で考えてみたことをまとめています。日頃からゲーム感覚で操作しているので共有できたらと思っております。

この記事が皆さんのお役に立てば嬉しいです!

# Git操作基本の流れ

ここからは、私が考える**Git操作**を任天堂スイッチの操作に例えて説明します。

## 1.任天堂スイッチクラウド保存(リポジトリの作成)

ゲームを始めるために、まずはゲームの大元となるセーブデータの保存(バックアップ)が必要です。そして任天堂には「[セーブデータお預かり](https://www.nintendo.com/jp/hardware/switch/onlineservice/savedata/index.html)」というサービスがあります。これのおかげで別の端末やプレイヤーからもセーブデータにアクセスすることができます。

ht

元記事を表示

独習Git

独習Git

https://www.shoeisha.co.jp/book/detail/9784798144610

https://www.manning.com/books/learn-git-in-a-month-of-lunches
https://www.manning.com/downloads/782

元記事を表示

ssh接続できるけどgithubにpushできない

# sshコマンドで接続は可能

「.ssh/config」にgithubへの接続設定を記載し、githubに公開鍵を登録しました。

“`config:.ssh/config
Host github
IgnoreUnknown UseKeychain
HostName github.com
identityFile ~/.ssh/
IdentitiesOnly yes
TCPKeepAlive yes
AddKeysToAgent yes
User git
“`

テストコマンドで接続も確認。

“`sh
ssh -T github
Hi <ユーザー名>! You’ve successfully authenticated, but GitHub does not provide shell access.
“`

実は、「.ssh/config」にあるミスがあります。
ssh単体のテスト接続は確認できるので、ここで問題には気づけませんでした。

もう、気付いた人もいると思います。実は、最初

元記事を表示

Gitコマンドを開発の流れに沿って紹介してみる

# リモートリポジトリをクローン
## リモートリポジトリのソースを取得
リモートリポジトリ上の`Code`からurlを取得し、
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2765600/6b2f29cb-e295-ccb1-5aa7-4dfcef249e28.png)

`git clone url`でリポジトリをローカルにおとす。
※この例ではSSHを使っているが、HTTPSを利用するのが一般的
“`bash
$ git clone git@github.com:hoge/huga.git
Cloning into ‘test’…
remote: Enumerating objects: 12, done.
remote: Counting objects: 100% (12/12), done.
remote: Compressing objects: 100% (7/7), done.
remote: Total 12 (delta 1), reused 5 (delt

元記事を表示

SourceTree で、push した commit を完全に消す方法

# 背景

Git で hard reset のメモです。

正直、こんなことすることが来るとも思ってなかった・・

Azure Pipelines で New Pipeline をすると、Default で Commit してしまうので、どうしても戻したくなった為。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/120072/ce56c9a6-8a8f-d105-0cc5-afde0686d5c1.png)

# 方法

1. SourceTree で戻したい hash を取得
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/120072/aa66a641-1814-f89e-2386-b68532a0eebc.png)

1. ターミナルを起動
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaw

元記事を表示

vscode拡張機能によるgit GUIでcommitができなかった話

vscodeって便利ですよね。ソース管理にお世話になっている人も多いことかと思います。
最近そのgit関連で発狂したので記録しておきます。

ふたを開ければ至極単純なミスなんですよねえ…なんで気づけないんだろう。

# 症状
0. vscodeのソース管理からcommitしようとする
0. エラーがでる
0. git configを叩く
0. また出る

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2420671/4a1f2150-a3aa-973c-2eee-78a6d06ee800.png)

最初にgit使おうとすると`user.name`と`user.email`を設定しろって言われるじゃないですか。あれを設定した後にこうなるんですよ。
いやー困りました。`git config –list`で確認してみるもよくわからん。
コマンドライン上からcommitしようとするとなんか~~警告が出るだけ~~なんですよね。

ローカルに設定してやると上書きされるみたいでいけるんですが毎回毎

元記事を表示

【TortoiseGit】Gitの基本操作をマウスだけで行う!

## 目次
1. TortoiseGitとは?
2. インストール方法
3. よく使うコマンドをまとめてみた
4. 操作方法について
5. 参考記事

## 1. TortoiseGitとは?
* TortoiseGitとは、バージョン管理ソフトであるGitをより扱いやすくするために開発されたWindows用ソフトウェアのこと
* ターミナル上でGitコマンドを実行するということに抵抗があるという方にオススメです!
* TortoiseGitGitはファイルを右クリックすることで、リポジトリのクローンやブランチの作成、プッシュなど基本操作がマウスだけでできるようになります
* 料金:無料

## 2.インストール方法
TortoiseGitを使うために必要なインストールするものは2つ!
* TortoiseGit
* 日本語言語パック

※ TortoiseGitは上記でも説明している通り、Gitを便利に使うためのツールであるため、
前提として「GitforWindows」を先にインストールしておくことが必要です。

インストール方法は[こちら](https://sukkiri.j

元記事を表示

【Git】aliasで引数を文字埋め込みする

誰も教えてくれなかったので

“`
[alias]
cbfix = !sh -c ‘git checkout -b fix/PREFIX-$0’
“`

`git cbfix 002`で`fix/PREFIX-002`ブランチを作成できる

一番参考になったのはC君

元記事を表示

【.gitattributes+liguist】githubリポジトリの言語統計情報をハックする

github repositoryのプログラミング言語情報が認識されないことがあり、その際に.gitattributeとlinguistを使って解決できたので、ついでに他も色々調べてみました。

以下のようなリポジトリの言語統計情報は[List repository languages API](https://docs.github.com/ja/rest/repos/repos?apiVersion=2022-11-28#list-repository-languages)によって各言語のコードバイト数に基づき算出されるらしい。
![スクリーンショット 2024-07-09 23.56.39.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1640807/97bfe743-4d3b-41cc-3bf3-2656a1021053.png)

github : https://github.com/github-linguist/linguist/tree/master

### 書き方の前提
“`.g

元記事を表示

話題の本「AmazonBedrock生成AIアプリ開発入門」のためにローカル環境開発してみた

どうも、アスカです。今回は話題の本、「AmazonBedrock生成AIアプリ開発入門」のハンズオンを進めて行くにあたり、ローカルの開発環境を整えていきます。Cloud9を使えば楽なんですが、環境から自分で作らないとやった気にならないんですよね…

# 前提
– ユーザはIAM Identity Centerのワークフォースユーザを利用
– Python環境はすでにある環境をベースに作成する
– Windowsです

自分がローカルで使ってきた環境をベースに進めていきます。

# 必要なもの
– Git…サンプルコードのクローンのため
– Python… サンプルコード実行のため(SDKも必要)
– AWS CLI…ローカルでAWSの権限をセットアップするため

ひとつひとつ、順番に確認していきます。

# Git
Gitのコマンドを使えるようになっているか、確認しましょう。
正常にインストール出来ていれば、以下のようにバージョン情報が表示されます。
“`
C:\…\YourPJ> git –version
git version 2.43.0.windows

元記事を表示

[Git/GitHub] Git-flow と GitHub-flow の違い

# まとめ
相違点は大きく分けて下記となります。
1. **リリース管理:** Git-flowはリリース管理に重点を置いており、releaseブランチやhotfixブランチが存在します。GitHub Flowでは、主にmain/masterブランチとfeatureブランチで管理します。
1. **使用シーン:** Git-flowは大規模なプロジェクトやリリースサイクルが明確なプロジェクトに向いています。GitHub Flowは小規模なプロジェクトや、継続的にデプロイを行うプロジェクトに適しています。

# 目次
– [Git-flowとは](#Git-flowとは)
– [Git-flowのワークフロー](#Git-flowのワークフロー)
– [GitHub-flowとは](#GitHub-flowとは)
– [GitHub-flowのワークフロー](#GitHub-flowのワークフロー)

# Git-flowとは
Git-flowは主に機能ごとにブランチを使い分けて開発を進めていく手法です。次の6つのブランチを用いて開発していきます。
– master
本番環境のブランチで

元記事を表示

初めてのGitは電車で例えて学ぼう!初学者向け基本Gitコマンド入門

## Gitを学びたての人へ

Gitを学びたての皆さん、こんにちは!今年の4月よりエンジニアとして新卒入社した [k_uki512](https://qiita.com/k_uki512)です!🎉
会社の新人研修や、プログラミングスクールでGitを初めて触り始めた方もいらっしゃるのではないでしょうか。そんな方が「分からない」という状態に陥りやすいのが “Git” のコマンドだと思います。

### 分からない理由を分析してみた
Gitのコマンドが分かりづらい理由として以下のような原因があると考えました。
– データをコマンドでやり取りすることがなかった
– 用語いっぱい。違いが分からない、、(add,commit…)
– データ(変更履歴)の流れが見えづらい

つまり変更履歴という概念が抽象的かつ、pushまでのステップが多いことが原因だと考えました。

そこで、この記事ではGitの一連の流れを、わかりやすく電車に例えて解説していきます!

この記事を通じてGitの流れを学び、会社での開発プロセスや新人研修に乗り遅れないようにしましょう!

元記事を表示

githooksをチーム開発でも利用できるようにする

# 背景

githooksをチーム開発でも活かせないか試してみました

# Githooks

githook はサンプルコードが存在します

gitを使ったプロジェクト内の `.git/hooks` にファイルが配置されています

“`
❯ ls -alh .git/hooks
total 128
drwxr-xr-x 16 ※** ※** 512B Jul 9 09:36 .
drwxr-xr-x 12 ※** ※** 384B Jul 9 09:45 ..
-rwxr-xr-x 1 ※** ※** 478B Jul 9 09:36 applypatch-msg.sample
-rwxr-xr-x 1 ※** ※** 896B Jul 9 09:36 commit-msg.sample
-rwxr-xr-x 1 ※** ※** 4.6K Jul 9 09:36 fsmonitor-watchman.sample
-rwxr-xr-x 1 ※** ※** 189B Jul 9 09:36 post-update.

元記事を表示

【Git】Git管理下のディレクトリ名を小文字から大文字に変更する

# 初めに
Components/atomsディレクトリを作成しました。

git pushし複数のPRを経て、ディレクトリ名はatomsではなくAtomsで作成すべきだったことに気づきました。
# 問題
ローカルのディレクトリ名を変更しコミット。

“`npm run build“`でビルドした際、importのパスが合わずエラー。

どうやらデフォルトだと`git config core.ignorecase`がtrueのため、ファイル名の大文字と小文字の変更コミットはGitに反映されないようです。
“`zsh
core.ignoreCase
If true, this option enables various workarounds to enable Git to work better on filesystems that are not case sensitive, like FAT. For example, if a directory listing finds “makefile” when Git expects “Makefile”, Git w

元記事を表示

【Git】サブモジュールの変更を取り込む方法

以下のコマンドを実行することでサブモジュールの変更を取り込むことができます。

“`shell
git submodule update –remote
“`

上記の場合にはすべてのサブモジュールの変更を取り込みますが、特定のサブモジュールのみの変更を取り込みたい場合には以下のように実行します。

“`shell
git submodule update –remote
“`

https://arc.net/l/quote/lssbbcvw

元記事を表示

AIがブランチ名を提案!GitHub/GitLabのブランチ名を一発生成するChrome拡張

前に、OpenAI APIを活用してIssueの内容から適切なブランチ名を自動生成するGitLab向けChrome拡張を作りました。

https://qiita.com/owayo/items/34a855ccfb90c96d729c

最近、GitHubのプロジェクトに関わるようになったので、GitHubでも動くように改良しました。

## ダウンロード

https://chromewebstore.google.com/detail/lbfkhiichdmakpghanpjjbicohannpcf?authuser=0&hl=ja

EdgeやArcでも動くと思います。

## しくみ
GitHubのIssueの、**Create branch**をクリックすると、ブランチ名を入力するモーダルダイアログが表示されます

![スクリーンショット 2024-07-08 19.31.55.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3741957/05fbe1c9-711f-c774-2528-b2

元記事を表示

複数ブランチを一括コミットしたいときの自分用シェル

### 複数ブランチを一括コミットしたいときの自分用シェル

““
#!/bin/bash

# 二次元配列: プロジェクト名と対応する番号
projects=(
“プロジェクトA 3”
“プロジェクトB 6”
“プロジェクトC 11”
)

# プロジェクトごとに処理
for project in “${projects[@]}”; do
# プロジェクト名と番号を分割
IFS=’ ‘ read -r -a project_info <<< "$project" project_name="${project_info[0]}" project_number="${project_info[1]}" # ディレクトリに移動 cd "/c/src/$project_name" || exit # ブランチ名とコミットメッセージを作成 branch_name="feature_${project_number}_hogehoge" commit_message="テスト #${proj

元記事を表示

OTHERカテゴリの最新記事