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

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

Powershell で.gitignore のグローバル設定を行う

こんにちは、PDF印刷からSPAまでを行ったり来たりで頭がバグりそうな中年です。

さて、どうしても案件的にWindows環境でGitを使う必要がありいつも通り設定していたところ、.gitignore のグローバル設定でハマったのでここで共有しておこうと思います。

## よく見かける方法がどうにもならなかった

まず成功した方法は下記の通り。

“`PowerShell
git config –global core.excludesfile $env:USERPROFILE\.gitignore
“`

あとは.gitignoreファイルを編集すればOKです。

もう少しちゃんと書くならこっちかな?

“`PowerShell
git config –global core.excludesfile $env:USERPROFILE\.config\git\ignore
“`

よく見かけるこいつはダメでした。

“`PowerShell
git config –global core.excludesfile %USERPROFILE%\.gitignore

元記事を表示

git pull できない「error: The following untracked working tree files would be overwritten by merge:」→できた

# git pull できない「error: The following untracked working tree files would be overwritten by merge:」→できた

# 結論(どうすればよいか)

キャッシュ的なものを消す
“`git
git clean -d -f .
“`
参照系が壊れたと思ったが違った?
-dオプションがいい味を出しているみたいだ・・・

“`git
# 試していたこと
git pull -f
git fetch
git checkout develop -f
git checkout masuter -f
git stash
git clean
git reset –hard
“`

# エラー内容
error: The following untracked working tree files would be overwritten by merge:

# 余談
最近キャッシュ系でトラブルシュート多いな・・・

もちろんリモートのブランチはちゃんと保護してから実施したほうがいいと思われる(protec

元記事を表示

cherry-pick 運用の地獄から這い上がった話をしよう

# はじめに
はじめに断っておくが、こんな生易しいものじゃない。本当に地獄の沙汰である。

![](https://raw.githubusercontent.com/noraworld/developers-blog-media-ja/master/cherry-pick-operation/Screen%20Shot%202022-02-15%20at%2020.03.24.png)

# 状況と問題点
筆者が参加しているプロジェクトでは、ブランチの運用が cherry-pick で行われていた。Git Flow でも GitHub Flow でもない。言うなれば、Cherry-pick Flow である。

## Git Flow について
Git Flow なら、本番リリースする際にまず `develop` ブランチからリリースブランチを切る。

“`mermaid
flowchart LR
subgraph branch[ ]
direction TB

subgraph develop
d1[A] –

元記事を表示

VSCodeでgitStashを使ってみる

# 概要
– あるブランチで作業をしている時にコミットはしたくないけど、別のブランチへ移動したい。そんな時に使えるのがgitstash。
– 今回はgitコマンドは使わずに、全てVSCodeだけで完結させる。

# そもそもgitstashとは?
– 編集した箇所を一旦棚に上げて、コミットはせずに保留にする。というイメージ

# 実際にgitstashをしてみる。
今回はtraining-gitstash-appというフォルダを作成、その中にindex.htmlファイルを作成する。
また、githubと連携ができている定で且つ、Masterブランチは以下画像のようになっていることを前提で進める。
![スクリーンショット 2022-05-17 23.15.40.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2559448/76ab5f60-53f5-7434-03bf-d2b59c40b675.png)

次にMasterブランチからfeatureブランチを作成しfeatureブランチへ移動をする。
![

元記事を表示

【Git】remote repository で rebase (本来よろしくないが)

# はじめに

Github でこんな状態になっています。

これを

とすることができました。

# やったこと

本来、remote repository で branch を rebase することは、共同開発者に迷惑をかけるので、良くないことのようです。
が、ここでは個人の担当しているところで、こういうことをしたかったという事情があります。

最初は、このようになっています。

main branch と feature branch があり、main の c

元記事を表示

Heroku利用方法[Windows]

# 目次
1. 事前準備
1. Herokuの利用
1. Herokuの運用

# 1. 事前準備

### Gitインストール
>[こちら](https://www.curict.com/item/60/60bfe0e.html “Gitインストール詳細”)を参考にしながら、Gitをインストールします。
私はすべてデフォルトでインストールしました。

### Herokuアカウントを作成
>[こちら](https://jp.heroku.com )から、「無料で新規登録」より作成できます。

### HerokuCLIインストール
>[こちら](https://devcenter.heroku.com/ja/articles/heroku-cli)からインストールできます。
CLI -> Command Line Interface

# 2. Herokuを利用
### Heroku環境構築
>“`bash
>heroku login # ログインページが起動するので、アカウントを入力する
>heroku create <アプリ名> # アプリを作るフォルダーを作成する
>#

元記事を表示

Git 分散バージョン管理システム

# Gitとは
“`分散バージョン管理システム“`呼ばれる。
## バージョン管理システム
・同じプロジェクトのリポジトリをネットワーク上に複数置いて管理できる
・複数人で同じプロジェクトで開発する際に便利だ。
・サーバには裸のレポジトリというステージや作業ツリーを持たないリポジトリを置く(そこで開発しないから)
・プロジェクトに応じてリポジトリの配置が可能になる。
### プロジェクト
プロジェクト:目的を達成するための計画
出典 https://backlog.com/ja/project-management-guide/intro/intro1/intro1_2/
### リポジトリ
バージョン(ファイルの変化分)を入れる場所

# Gitのコマンドとヘルプ
“`
git help
“`
gitの後に“`help“`などをつけるがこのコマンドを“`gitコマンド“`(サブコマンド)という。
またこのサブコマンドを含めた意味は
“`サブコマンドの説明“`を見ることができる。
例えば
“`
git config 引数..
“`
を使いたいが、どのようなコマン

元記事を表示

OKスクリプト【作業効率化】

# OKスクリプト

端末から

“`
> ok
“`

と入力すると

“`
git add .
git commit -m ok
git push origin main
“`

が実行されるスクリプト。
パスが通ったフォルダに`ok.bat`や`ok.sh`を作る。

“`bat
git add .
git commit -m ok
git push origin main
“`

あとは作業が終わったら`ok`するだけ。
雑なコミットに最適(^o^)コミットナンテオマケデス

元記事を表示

【Github】リリースを取り消し

メモです。

### リリース取り消し

Github でRelease したものを取り消して修正を加えたい場合。

こちらにあるとおりでした。
https://akinov.hatenablog.com/entry/2020/10/20/172457

Github である origin にある tag 1.0.0 を、ローカルから消します。

“`
$ git push –delete origin 1.0.0
“`

リリースは削除され、draft release の状態になります。

### リリース

そもそもですが。

https://docs.github.com/ja/repositories/releasing-projects-on-github/about-releases

元記事を表示

【Xcode】 リモートリポジトリとの連携

# 初めに
まだ右も左もわからなかった頃、ターミナル経由でローカルリポジトリとリモートリポジトリの設定をした際エラーが出た。
下記のZennに顛末を書いています。

https://zenn.dev/xvipea0/scraps/07f5010f270d4d

時が立ち、改めてリモートリポジトリとの連携について再考したところ、もっと直感的でわかりやすい方法があることに気がついたので、当時の自分のために、改めて記事にしようと考えました。

前提として、プロジェクトとローカルリポジトリの作成は終わっている状況を想定しています。

# 1.GitHubにプロジェクトを作成する。
![スクリーンショット 2022-05-16 20.54.30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1450941/e65eae38-fd43-4f3f-6ddc-baf183be96fc.png)

# 2. gitignoreファイルを作成&追加する

https://zenn.dev/nkysyuichi/articl

元記事を表示

Git コマンド

# Git コマンド

– 自分が使用するGitコマンドを備忘録として記載する

## git clone
– オプションなし
– Gitリポジトリをクローンしてくる
“`
git clone https://github.com/XXXXXX/hogehoge.git
“`
–depth n オプション (Shallow clone)
– Gitリポジトリから履歴数を指定してクローンしてくる
(nは数。n=1にすると最新コミットのみ取得する)
“`
git clone –depth n https://github.com/XXXXXX/hogehoge.git
“`
–recursive オプション
– Gitリポジトリから submodule も同時にクローンしてくる
“`
git clone –recursive https://github.com/XXXXXX/hogehoge.git
“`
## git fetch
– オプションなし
– リモートリポジトリのコミット履歴を取得する。但しマージ

元記事を表示

【一本目】ガチ初心者がUnreal Engineで自作ゲームを作り、将来的にSteamに公開したいゲーム作成日記

# 【一本目】
– 各種ツールの導入
– 基本的な使い方を学ぶため、GitとGitHubを少しだけ触った
— リポジトリを作った
— コミットしてプッシュした
— クローンした
— ブランチを作って、新しいファイルをコミットしてプッシュした
— それをマスターにマージした
— マスターからプルしてきた
# 感想
なんとなく仕組みや使われる場面が分かった。Unityのことを思い出すと、コードの更新くらいしかやることがないのではないか?と考えている。もう少しUnreal Engineに手を付けてから触ればよかったと後悔した。

元記事を表示

ガチ初心者がUnreal Engineで自作ゲームを作り、将来的にSteamに公開したいゲーム作成日記の概要

# 概要
高校時代に自分が面白いと思ったパズルゲームの案が通らなかったのが悔しい!
そのため、世界に評価してもらうことを目標にゲームを作る!
## 作成を通してやりたいこと
– Unreal Engineを使う
– Git及びGitHubを使う
– Qiitaに記事を書いてみる
– Steamに公開する
## Unreal Engineを選んだ理由
– Twitterで見た越中大門駅の再現を見て、光の表現が純粋にすごいと思ったから
– 高校時代はUnityを使ったため、ほかのツールを使ってみたい
## Git及びGitHubを使う理由
– 友人にゲームやITの業界に行きたいならGitとGitHubは絶対に触ることになると言われたから

## Qiitaに記事を書く理由
– モチベーション維持のため
– 記録を取っておいたほうが管理しやすい
– 記事を書く経験がなかったため

## Steamに公開する理由
– ゲームを評価してほしい
– Steamでゲームを出すにはどうすればいいのかを学ぶ
– あわよくば大ヒット

# 最後に
毎日書くわけではないが、進捗がある度に書いていこうかなと思

元記事を表示

git cloneしたLaravelを使うときの注意点

## 初めに
git cloneしたLaravelを使ったらエラーが起きたので話します。

## エラー内容
– venderフォルダがない
– .envがない
– アプリケーションキーを設定していない

↓Dockerで環境構築した場合
– MySQLの文字コードがutf8じゃない
– .envのDB_HOSTが違う

### 1 venderフォルダがない
Laravelはvenderがgitで管理されないようになっています。
そのためvenderフォルダを作ってあげる必要があります。
“`bash
# Dockerで環境を作った場合、PHPコンテナに入りLaravelのフォルダで行う
$ composer install
“`
これでルートディレクトリにvenderが作られます。

### 2 .envがない
.env.exampleをコピーして.envにします。
“`bash
$ cp .env.example .env
“`
アプリ名、データベースのユーザー名・パスワードなどを変更します。

## 3 アプリケーションキーを設定していない
.envのAPP_

元記事を表示

XSERVERにlaravelのwebアプリをgitからデプロイ

この作業が何回やっても慣れず、自分の備忘録的な意味も含めて書かせていただきました。
もしよければ参考にしてみてください。

## SSH接続
初期設定の部分は簡単なので飛ばします

ログインコマンドはこちらです
“`
ssh -l サーバーID -i ~/.ssh/サーバーID.key サーバーID.xsrv.jp -p 10022
“`

## PHPのバージョンアップ

#### 1 , 現在のバージョンを確認
LaravelにはPHPのバージョンが7以上であることを要求されています。
まずは以下のコマンドを実行してphpのバージョンを確認してみます。
“`
php -v
“`
laravel8.*を使うときはバージョンが7以上
laravel9.*を使うときはバージョンが8以上であれば、そのままでも大丈夫です。

#### 2 , バージョンアップ
では、実際にphpのバージョンを変更していきます。
まずはHOME直下にbinディレクトリを作成します。

“`
mkdir $HOME/bin
“`

下記コマンドを実行すると使えるバージョンが表示されます。
“`

元記事を表示

【git】SSHのアクセス条件を指定 (push できなくなったときの対処)

# はじめに

git のアカウントの切り替えに失敗して、うまくgithub にpush できないときのメモです。

– .ssh/config
– git remote SSHの鍵を指定して定義する

ことで無事にpush できました。

# 内容

### 症状

休日も自宅で、自分の古いPCで仕事をしています。
作業が終わって、いざGithub にあげようとすると、

“`
$ git push origin2 dev/multiprocessing2
ERROR: Repository not found.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
“`

と言われてしまい、途方にくれていました。土曜日夜の11時。はぁ。

と、この記事を見つけました。

https://stackoverflow.com/questions/7927750/specify-an-ss

元記事を表示

Gitについて

# Gitについて

## Gitとは
分散型バージョン管理システム
ただデータを保存するだけでなく誰がいつどこを編集したのか履歴を保存管理できる仕組み

## Gitにできること
* 新旧のファイルを一括管理
* 簡単に古いファイルに戻せる
* チームでファイルの変更履歴を共有
* チームで修正した部分を統合
* チームでの業務を効率化できる
* 様々なファイルを管理可能

## GitとGitHubの違い
「Git」は、「ソースコードのバージョンを管理するツール」
対して「GitHub」は、「Gitを利用した、開発者を支援するWebサービス」

## gitに出てくる語句
### ワークツリー
Gitで管理しているファイルでaddする前の階層

### インデックス
これからコミットするファイルの階層
## Gitの基本コマンド
## ローカルでGitを使えるようにする(git init)
`$ git init`
ローカルでリポジトリを新規作成する、または既存のリポジトリを初期化する

## ファイルの変更(追加/変更/削除)を確認する(git status)
`$ git st

元記事を表示

Githubでデータ共有 その3 Github Desktop編

# はじめに
当記事は、以下の2記事の続編です。

 * [Githubでデータ共有 その1 Githubユーザー登録編](https://qiita.com/makaishi2/items/2369ee88d6381a3651b0)
 * [Githubでデータ共有 その2 インビテーション編](https://qiita.com/makaishi2/items/301630c1ef968cf0cd56)

2つめの記事の最後で説明したように、インビテーションへのAcceptが終わった段階で、privateなリポジトリへのアクセスは。ブラウザ経由ですでに可能です。しかし、Github Desktopを使うと、リポジトリへのアクセスの勝手が格段よくなります。
当記事はその設定をするための手順書ということになります。

#手順

ブラウザから次のリンクを入力します。

https://desktop.github.com/

Githubでデータ共有 その2 インビテーション編

# 始めに
別記事 [Githubでデータ共有 その1 Githubユーザー登録](https://qiita.com/makaishi2/items/2369ee88d6381a3651b0)の続編です。

想定としては、「今まで開発経験のない人たちと、もともとGithub(privateリポジトリ)にあるデータを共有したいという」話があり。Githubのユーザー登録は完了し、管理者が、リポジトリに対してアクセス許可をすでに出した、
という場合のその次の手順の解説です。

# 手順
リポジトリ管理者側でアクセス権の登録が終わると、次のような内容のメールが届きます。
「view Invitasion」のボタンをクリックします。

下の画面になったら、GithubのIDとパスワードを入力します。

久々にAndroid開発する人のlinter導入ログ

# はじめに

現在転職活動中だが、とある会社の技術試験中に自分のAndroid開発の知識が古すぎることを痛感した。
以前から考えているアイディアでアプリを作ることにより、
現代のAndroid開発の知識を習得し直すことにした。

その時の学びをメモしていく。

## 筆者の知識レベル

自分のAndroidの知識レベルはおおよそ7年前、OSのバージョンだと4が出るかどうかレベルのものだ。
Android StudioやKotlinは普及する前だし、Gradleも触ったことがなかった。

ライフサイクルやcontextの知識はそれなりにあるぐらい。

## 環境

IDEはAndroid Studio Arctic Fox | 2020.3.1 Patch 1、OSはWindows10
さっくりいうなら2022年4月の最新環境である。

# Linter導入

今の自分がAndroidアプリを作るとして、まず手を付けること…
それはコードやプロジェクトの構成に誤りが生じる可能性を十分に下げること。
つまり、linterの導入だ。

Android+Kotlinの場合、手軽に使えるものは

OTHERカテゴリの最新記事