今さら聞けないGit 2022年05月25日

今さら聞けないGit 2022年05月25日

gitの基本的な操作

# Gitを設定する
“`
git config
“`
Gitの設定ファイルにある変数の値を設定する。
設定ファイルの変数には3種類ある。

## gitの設定ファイル(の種類
### そのマシン全体に対する設定
“`etc/gitconfig“`
### ユーザーごとの設定
“`~/.gitconfig“`
### プロジェクトごとの設定
“`.git/config“`
## 思ったこと
ファイルの種類で設定が変わる。

これらのファイルの設定を変えるためにはオプション引数が必要となる。
## オプション引数
### –global
“`~/.gitconfigの設定(ユーザーごとの設定)“`を変えることができる。
### –system
“`/etc/gitconfigの設定(そのマシン全体の設定)“`を変えることができる。
### オプション引数なし
“`.git/configの設定(プロジェクトごとの設定)“`を変更できる。

## Gitを始める前にする設定
ユーザーごとの設定(~/.gitconfig)名前とメールアドレスは設定すると良い
`

元記事を表示

[M1 Big Sur]でgit add .しようとしたらgit-lfs filter-process: git-lfs: command not foundが出てきてできない時

# 概要
M1 Mac Big Sur 11.5.2
# 状況
Macのターミナル上で`git init`,`git config –global user.email “{Your mail address}”`,`git config –global user.name “{username}”`,`git remote add`と一通りの手順を踏んだ後に`git add .`で差分を追加しようとしたところ,
`git-lfs filter-process: git-lfs: command not found`
というエラーが出てきた。どうやらこれは`Home brew`がインストールされていないことが原因のようだ。
# Home brewをインストール
M1 Macの場合,まずは以下の設定を行わなければならない。
1.ファインダーの検索窓で 「ターミナル」 と検索
2.出てきたターミナルを右クリックして、 「情報を見る」 をクリック
3.「Rosseta使用して開く」 (またはRosseta2) 左横のチェックボックスにチェックを入れる
4.ターミナルを再起動

ここまでで

元記事を表示

イメージで理解するGit

# はじめに
普段VSCodeの拡張機能である程度グラフィカルに操作してしまっていていたが、最近コマンドでgitを使わなきゃいけないことがあり、普段抜けてしまっているgitの知識があったなぁと感じました。
あと、gitのコマンドってイメージが湧きにくいものがあり、ついつい“ただの作業“になってしまうことがあるなと思ったため、しっかりコマンドを打つときはイメージを持って、自分が今何をしているのかを理解しながら進められるように、イメージ図を交えながら整理してみたいと思います。

# リポジトリとは
gitを使う上で最初に作成することになるのが、リポジトリです。
リポジトリとは、バージョン管理したいファイルや画像などを入れる貯蔵庫だとよく表現されます。
このリポジトリ(貯蔵庫)に様々なファイルの変更などを入れていくことで、バージョン管理を行うというイメージです。
BitBucketにPushできなかった時の解決策(備忘録)

# BitBucketにPushをしようとしたらrejectされた。

## 起こったこと

  ソースファイルをBitBucketのリポジトリにPushしようとしたが、`![rejected]`された。(Githubで試したが問題なくPushできた。)

“`
$git push origin master

error: failed to push some refs to ‘https://bitbucket.org/×××/○○○.git’
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: ‘git pull …’) before pushing again.
hint: See the ‘Note about fast-forwards’ in ‘git push –help’ for details.
“`

## 解決

元記事を表示

未解決のコンフリクトを検知するgit-hooks(pre-commit)をすべてのリポジトリに適用する

Git には`hooks`といって特定のイベントが発生するたびに自動的にスクリプトを実行する機能があります。
これらを使用すると、Gitの内部動作をカスタマイズし、開発ライフサイクルの重要なポイントでカスタマイズ可能なアクションをトリガーできます。
具体的な利用シーンとしては、コミット時にコードのフォーマットやプッシュ時にテストコードを実行するなどです。

hooks は以下の場所にサンプルが入っています。
代表的なものとして「**pre-commit**」(コミット時にスクリプトを実行)や「**pre-push**」(プッシュ時にスクリプトを実行)があります。

“`
$ cd /PATH/TO//.git/hooks/
$ ls -1
applypatch-msg.sample
commit-msg.sample
fsmonitor-watchman.sample
post-update.sample
pre-applypatch.sample
pre-commit.sample
pre-merge-commit.sample
pre-push.sample

元記事を表示

GitHubでのブランチ作成からローカル環境へのクローンまで

# はじめに
先日、[「GitHubでのリポジトリ作成からREADME作成まで」](https://qiita.com/cats_2311/items/2d986a5a5743b2f324e0)にて、GitHub上でのリポジトリの新規作成についてまとめました。
今回は、「GitHub上でのブランチ作成〜ローカル環境へのクローン」について、まとめたいと思います。
※MacBookで作業しております。

# 前提
– GitHubのアカウントを作成済であること。
– GitHubに公開鍵を登録済であること。
– Gitリポジトリを作成済であること。

# 本題
## (1)ブランチの新規作成
GitHub.comでブランチを作成するため、リポジトリのメインページにアクセスしておきます。
ブランチセレクタメニューに新しいブランチ用の名称を入力し、「Create branch」を押下します。
![1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2602721/d737b139-d2d4-e52e-10f6-d

元記事を表示

Zshプロンプトのカスタマイズ

# 経緯
Gitのブランチ表示・タブ補完などをしようとおもった
→いろんな記事のコードを組み合わせたらうまく動かずぐちゃぐちゃになった
(おそらくZsh使ってるのにBash向けの記事も参考にしたため)
→なんとかなったので整理がてらの備忘録を書く

# 環境
| 項目 | 内容 |
| :– | :– |
| マシン | MacBookPro 2017 |
| OS | macOS 12.4 Monterey |
| シェル | Zsh |
| Python: バージョン管理 | pyenv (from HomeBrew) |
| Python: パッケージ管理 | pip |
| Python: 仮想環境 | venv |

# 導入
## 完成イメージ
黄色:仮想環境、緑色:ユーザー名、白色:フォルダ名、水色:gitブランチ
![IMG_0243.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/614520/f4132782-1f06-803f-21e8-682e32a57e03.png)

#

元記事を表示

gitのコマンドあれこれ

### ローカルリポジトリでブランチを作成

“`terminal: terminal
git checkout -b [NewLocalBranchName]
“`

### 現在のブランチを変更する

“`terminal: terminal
git checkout [localBranchName]
“`

### ブランチの削除
※ 削除しようとしているリポジトリにいる状態だと削除できない

“`terminal: terminal
git branch -d [localBranchName]
“`

### 現在のローカルリポジトリのブランチを全て確認

“`terminal: terminal
git branch -a
“`

参照元: https://qiita.com/TetsuTaka/items/5ab227a8bd2cd7106833

元記事を表示

git コマンドメモ

## 記事内容
gitのコマンドの備忘録

## コマンドメモ
### cloneする
“`
$ git clone {URL}
“`

### branch一覧
*がついているのが現在位置。
“`
$ git branch
“`

### branchをcheckout(切り替え、無い場合作成して切り替え)
“`
$ git checkout -b {branche名}
“`

### リポジトリの状態を確認
“`
$ git status
“`

### 変更をステージング
“`
$ git add {ファイル名やフォルダ名}

// カレントディレクトリ以下全ての変更をステージング
$ git add .
“`

### コミット
“`
$ git commit -m {メッセージ}
“`

### ログを確認
“`
$ git log
“`

### pullする
“`
$ git pull {repository} {branch}

// master branchをpullする例
$ git pull origin master
“`

#

元記事を表示

Gitをインストールするときに叩くコマンド(個人用)

# 経緯
Gitをインストールする際、いつも「初期設定何するんだっけ?」となるので、コマンドを使い回せるようまとめる。(随時更新)

# コマンド
“`powershell
# chocolateyがインストールされている場合
choco install git

# Git設定
git config –global user.name “ユーザー名”
git config –global user.email “メールアドレス”
git config –global core.ignorecase false
git config –global init.defaultBranch main
git config –global core.autocrlf false
“`

# 説明
“`powershell
git config –global user.name “ユーザー名” # 設定しないとpushできない
git config –global user.email “メールアドレス” # 設定しないとpushできない
git config –gl

元記事を表示

WindowsにてGitHubにSSH接続できるようにする ~VSCode開発~

# 本記事の内容

– WindowsにてGitHubにssh接続するための設定を行います。

GitHubアカウントを既に作成済みの前提で本手順は作成しているので、
未作成の場合は作成を行ってから本手順を実施してください。

VSCode(Visual Studio Code)で開発している方を想定しているため、
本文中作業は、VSCodeからWindowsのPowerShellを起動して実施していますが、
VSCodeを利用していない方は直接PowerShellを起動することで恐らく実行できるかと思います。

# 実施環境
– Windows 10
– Chrome
– PowerShell

# 手順の流れ
1. WindowsのVSCodeでの公開鍵・秘密鍵の作成
2. GitHubに公開鍵を登録する
3. gitの初期設定
4. SSHアクセスの確認(クローンテスト)

## 1. WindowsのVSCodeでの公開鍵・秘密鍵の作成

VSCodeを起動する。
![1.png](https://qiita-image-store.s3.ap-northeast-1.amaz

元記事を表示

Cloud9からCodeCommitが簡単に操作可能

# はじめに
クラウド上のIDEであるAWS Cloud9について、AWSのコード管理サービスCodeCommitと簡単に連携可能でしたので、それを記事にしました。

# 参考
下記ページではCloudShellですが、Cloud9でもデフォルトで`git-remote-codecommit`がインストールされているため、同様のことができました。

https://dev.classmethod.jp/articles/try-using-aws-codecommit-to-manage-aws-cloudshell-configuration/

# 手順

## CodeCommitでリポジトリ作成
検証用にテストのリポジトリを作成します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/553680/9fc3fdd6-4508-d974-8f86-9b509a2f8420.png)

![image.png](https://qiita-image-store.s3.ap-nor

元記事を表示

Web開発現場でよく使いそうなVSCodeの機能をまとめたみた

##

書籍`Visual Studio Code完全入門`より、Web開発現場で個人的によく使いそうな内容を
参考記事と紐づけながらまとめてみました。

### 参考

[Visual Studio Code完全入門 Webクリエイター&エンジニアの作業がはかどる新世代エディターの操り方 – インプレスブックス](https://book.impress.co.jp/books/1121101051)

## 全般

– ステータスバーは押せて、以下の機能がある(一例)
– 指定行へ移動
– インデントの文字数を変更
– 文字コードや改行コードを変更する
– ブランチのチェックアウト
– ファイルをシングルクリックするとプレビューモードで表示。ダブルクリックすると編集モードで開く。
– プレビューモードでファイルを開くと、次にファイルを開くと元のファイルが非表示になる。
– 設定 `enablePreview` ⇒ プレビューモードを外すことができる
– `Zen Mode`でコーディングに作業

元記事を表示

GitHubでのリポジトリ作成からREADME作成まで

# はじめに
初めまして、@cats_2311と申します。
プログラミングの基礎から学び直そうと思い、初めての投稿です。
今まではSVN(Subversion)の使用だったため、Git初心者です。
「(1)GitHubリポジトリの新規作成〜(2)REDAME作成」について、Git初心者の方にもご参考になれば幸いです。

# 前提
– GitHubのアカウントを作成済であること。
– GitHubに公開鍵を登録済であること。

# 本題
## (1)GitHubリポジトリの新規作成
GitHubにログインした状態で「Repositories」タブから「New」を押下します。
![0.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2602721/53a5ffd9-9c4c-89a1-21e4-7a9f276a029f.png)

「Repository name」に任意のリポジトリ名を入力します。
※私は、Spring Bootを勉強しようと思い、このような名前にしてみました。
![1.png](https

元記事を表示

fzfを使ってgit checkout commit-idをスムーズに行う

Gitを使った開発をしていると、特定のコミットにcheckoutすることが一日に何回もあると思います。
ブランチやタグの割り当てられていないコミットの場合、以下のような手順でコミットIDを指定する必要があり、面倒です。

1. `git log`でツリーを表示する
1. ckeckoutするコミットのコミットIDをコピーする
1. コミットIDをペーストしてcheckoutする

そこで、上の一連の流れをスムーズに行うシェル関数を、`fzf`を使用して実装してみました。

# 前提
`fzf`がインストールされていることを前提とします。
`fzf`そのもの及びインストール方法については本家をご参照ください。

https://github.com/junegunn/fzf

# 実装

“`bash
# fco – checkout git commit
fco() {
local commit
commit=$(git log –graph –color=always –remotes –branches \
–format=”%C(

元記事を表示

Git hub 久しぶりに使う人のまとめ

## はじめに
自分用に使うときにコマンド忘れてるため、メモ

## リモートリポジトリからクローンする
gitプロジェクトは、githubから自分の環境にクローンを作成する。

### 1.緑ボタンのCodeをクリックし、 レポジトリURLコピーする
HTTPS clone URLのボタンをクリックするとクリップボードにコピーされる。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/367026/fa442a61-d03f-c9fd-41bb-f4fc156ffacc.png)

### 2.Visual Studio Code ターミナル画面起動し、コマンドを入力
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/367026/8f02f96a-d308-44de-edc6-9dbf68765d0d.png)

“`
$ git clone https://github.com/mic

元記事を表示

rebase備忘録

## はじめに
備忘録も兼ねて、以下の場合に応じて用途をまとめる。
– gitで親ブランチの変更を取り込むときの、mergeコミットをなくしたい
– 誤コミットをrevertコミットで消すんじゃなくて、そもそもなかったことにしたい
– コミットの中に誤修正が入っていたので、コミットは残しつつ誤修正だけなかったことにしたい
– 過去のコミットコメントを修正したい
– 複数に分けたコミットを1つにまとめたい
– コミットの順番を変えたい(コミットをまとめるときに使いがち)
## 概要(rebaseとは)
「re(**再**)base(**基点**)」の名の通り、 再度基点を設定する。
変更の取り込みに使う場合があるため、mergeコマンドと比較されることが多い。
変更の取り込み以外にも、以下のようにコミット履歴の改変が可能なコマンド。
・コミットメッセージの改編
・コミットの削除 など

例) 以下のようなコミットがある場合
“`
—–➀—–➁—–➂—–➃—–➄—–➅
“`
➃から生えている➄をrebaseすると
“`
—–➀–

元記事を表示

Rails 7.xをHerokuにデプロイする

まずHerokuにログインする。アカウントを持ってない方は作成してください。
“`bash:ログイン
$ heroku login
“`
次にHeroku上にアプリを作成する。
“`bash:アプリ作成
$ heroku create -a “アプリ名”
“`
ただしアプリ名には命名規約があるので注意。
アルファベットの小文字・数字・ハイフンのみを含み、先頭はアルファベット、末尾はアルファベットか数字である必要がある。

“`bash:リモートリポジトリの指定
$ heroku git:remote -a “アプリ名”
“`

`Gemfile`の以下の行
“`ruby:Gemfile
gem ‘sqlite3’
“`
を消して、以下のグループ
“`ruby:group :development, :test
group :development, :test do

gem “sqlite3”
end
“`
の中に記述する。

同ファイル内に次の行を追加する。
“`ruby:Gemfile
group :production do
gem “pg”

元記事を表示

[Git] コミットを修正する

# 直前のコミット

## commit –amend

“`zsh
git commit –amend
“`

### reset-author

コミットの作者もリセットできる

“`zsh
git commit –amend –reset-author
“`

# 古いコミット

## rebase -i

“`zsh
git rebase -i HEAD~n
“`

コマンドで、デフォルトのテキストエディタに直近 n コミットの一覧を表示できる
修正したいコミットの前の`pick`の文字を`edit`に変更して保存・終了する

内容修正した後

“`zsh
git add .
git commit –amend
git rebase –continue
“`

# Reference

https://backlog.com/ja/git-tutorial/stepup/28/

https://backlog.com/ja/git-tutorial/stepup/33/

元記事を表示

社内NASサーバーをGitのリポジトリにする方法

## 経緯
社内の文化としてSVNを使っているが、どうにも使い勝手が悪くGitに移行したいと考えていた。
しかし、Gitを導入するには社内サーバーに環境構築 or Github等を会社で契約する必要があり面倒。。
そこで、社内NASサーバーにGitのリポジトリを登録することにした。

## 前提条件
– git bashがインストールされていること
– 開発メンバーがNASにアクセスできること

## 手順
1. NASの任意の場所にリモートリポジトリになるフォルダを作成
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280004/c6a09c77-7ca6-cd28-5b96-95a14732ab54.png)

2. 作成したフォルダに移動し、右クリック>Git Bash Hereを押下
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280004/82cc2f81-db7c-9

元記事を表示

OTHERカテゴリの最新記事