今さら聞けないGit 2022年12月21日

今さら聞けないGit 2022年12月21日
目次

[メモ] WinのGitサーバからcloneするとき”hoge does not appear to be a git repository”と怒られる。

# 経緯
もろもろの理由からローカルのWindow8(古る!)のPCでGitサーバを立てることにした。
GitとOpenSSHをインストールしリポジトリを作成して、Ubuntu20.04のクライアントからCloneを試みたところ、次のように怒られた。

“`shell
$ git clone ssh://GitServer/c/repository/hoge.git
Cloning into ‘hoge’…
fatal: ”/c/repository/hoge.git” does not appear to be a git repository
fatal: Could not read from remote repository.

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

もちろんレポジトリは正しく作成してるしSSHの設定・接続に間違いはなかった。

# 解決
参考元:[How do I git clone from a Windows mac

元記事を表示

【Github】プルリクエストのレビューコメントが表示されない原因と解決方法(インラインコメントのpendingとは?)

# 困ったこと
* Aさん(自分)はソースコードを改修したのでGithubでプルリクエストを行い、Bさん(先輩)がレビューをして何点か指摘を行った
* しかし、BさんのブラウザでのGithubではレビューコメントが表示されているのに、AさんのブラウザでのGithubではレビューコメントが表示されないという状態になった。なぜ??

# 原因の模索
* アクセス権限が関係あるのかなと思ってAさんもBさんも確認したが、特に問題はなさそう(というよりそもそも権限なかったらプルリクできない?)
* Googleのオートコンプリートやサジェストでも「github コメント 表示されない」「github レビュー 表示されない」「GitHub review comments not showing」といったキーワードが沢山出てくるが、それらしい日本語の記事が見つからない
* ということで、なかなか時間がかかりましたが、以下英語記事を見たら原因と解決方法が分かりました
* [How to view line comments in GitHub?](https://stackoverflow.

元記事を表示

scoop update でnewフォルダが存在しないエラーの暫定解決方法

# はじめに

Windows用のパッケージ管理ツール`scoop` が便利で重宝してるのですが、update を実行すると数日前から以下のようなエラーが出るようになってしまいました。詳しい原因はわかりませんが、とりあえず動くようにできたので対応方法を残しておきます。

“`bat
PS C:\> scoop update
Updating Scoop…
Remove-Item: C:\Users\{ユーザ名}\scoop\apps\scoop\current\libexec\scoop-update.ps1:79
Line |
79 | Remove-Item $newdir -Force -Recurse
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| Cannot find path ‘C:\Users\{ユーザ名}\scoop\apps\scoop\new’ because it does not exist.
Scoop download failed. If t

元記事を表示

Git ブランチ関係のコマンド

ブランチを確認

“`Git
git branch
“`

ブランチを作成

“`
git branch <ブランチ名>
“`

ブランチを変更

“`
git checkout <ブランチ名>
“`

ブランチを作成して変更

“`
git checkout -b <ブランチ名>
“`

ローカルのブランチをリモートに作成

“`
git push -u origin <ブランチ名>
“`

元記事を表示

初心者向けgitコマンドの使い方

gitのコマンドについて忘れることが多いのでメモとして投稿させて頂きます。

# リモートリポジトリへの登録の流れ
1.作業フォルダのファイルをステージングエリアに**add**する。
2.ローカルリポジトリに**コミット**する
3.ローカルリポジトリのコミットしたファイルをリモートリポジトリに**プッシュ**する

# gitコマンドの使い方
* git状況の確認
* git status
* ステージングエリアに追加
* git add -A or ファイル名
* ステージングエリアから削除
* git rm
* コミットファイルとステージングエリアのファイルとの差分
* git diff –cached
* ローカルリポジトリにコミット
* git commit -m “修正タイトル”
* 直前のコミットの取り消し(コミットの削除、ステージングエリアからも削除)
* git reset –soft HEAD^
* コミットIDの確認(コミット履歴の確認)
* git log
* 指定コミットの取り消し
*

元記事を表示

自分用 コマンド一覧

# 基本のコマンド
### 1.ファイルを作成する**touchコマンド**
“`:例
touch test.txt
“`
### 2.ファイルの中身を表示させる**catコマンド**
“`:例
cat test.txt
“`
>結果 
test.txtの内容が表示される
:::note info
少し打ってからTabキーを押すことで、補完機能が起動し、打ち間違いを防ぐ
:::

### 3.フォルダ(ディレクトリ)を作成する**mkdirコマンド**
“`:例
mkdir html
“`
>結果
htmlフォルダが作成される

### 4.ファイルを移動する**cdコマンド**
“`:例
cd html
“`
>結果 
今見いるフォルダからhtmlフォルダに移動する
:::note info
cdだけで実行するとホームディレクトリに移動する
(ホームディレクトリ…
   ユーザが起点にするディレクトリで「~」で表される)
:::

### 5.今見ているカレントディレクトリを表示させる**pwdコマンド**
“`:例
pwd
“`
>結果
今のフォルダまで階層構

元記事を表示

SourceTreeでpre-commit hookが失敗する時の対処法

## 先に結論だけ

macOSのSourceTreeでpre-commitに関する問題が発生したら、SourceTreeの設定を内蔵GitからSystem Gitへ切り替えてください。

## はじめに

この記事は、SourceTreeでのコミット時に、pre-commitフックが失敗する問題の記録、および対処方法を共有するためのものです。

### 対象とする環境

– macOS 12.6.1
– SourceTree v4.2.1 (248)
– git version 2.39.0

### 対象とする読者

– Gitを使っている
– SourceTreeを使っている

各ツールのインストールガイドなどは、それぞれの公式ドキュメントをご参照ください。

## 問題の詳細

Gitの[pre-commitフック](https://git-scm.com/book/ja/v2/Git-%E3%81%AE%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%9E%E3%82%A4%E3%82%BA-Git-%E3%83%95%E3%83%83%E3%82%AF)を

元記事を表示

インターンで使ったGit・GitHub操作・Tips集

# はじめに
インターン・個人開発などで、Gitを日常的に使っていてつまづくポイントが色々とあると思います。
それを今振り返った時にまとめておけば、昔の自分のようにつまづくであろう人が、将来の自分の備忘録として、Git・Github操作・Tips集を残しておこうと思います。

# まずは公式から
なんでもそうですが、公式が一番です。
確かに慣れてしまえば、全く公式を見なくても、「そういうものか」とういノリで乗り切れますが、奥の手として公式の存在をずっと持っておくというのは重要だと思いますので、それらの紹介からします。

Github Skills: https://skills.github.com/#first-day-on-github
tips: https://github.com/git-tips/tips

# Git・Github操作
## 超基本
開発の一連の流れを踏まえた上でGitが使えるようになれば、問題なく開発できるので、そこをまず押さえます。

checkout、branchなどのブランチ操作・add・commit・push・pullは、基本として必要

###

元記事を表示

Gitlabの利用登録をしてみた

# 初めに
CI/CDの勉強をしようとGitlabの導入を検討した。
Gitlabはリモートリポジトリとして利用ができるほか、CI/CDの構築が行える。
今回はアカウント登録の作業をテキストベースでまとめておく。
# 登録方法
1. Gitlabの公式ページからFreeでSaaSバージョンのGitlab登録ページへ遷移する。
1. 所望の登録方法でアカウントの登録を行う。利用用途は学習用途を選択。
1.
# 注意点
1. 初回は英語表記のため、アカウントを作成してから左にあるメニュータブからセッティングを選択し、日本語設定を行った。
1. プロジェクトの作成を求められるので、適当に新規に作成する。
1. SaaS版とオンプレ版の二つがあるので、利用用途に合わせて選択する。
1. 複数人で利用する場合や利用製薬に引っかからないかを確認。

# 今後の予定
1. Gitのコマンドを一通りやってみて問題がないことを確認する。
1. AWS EC2にアプリサーバを構築し、CI/CDパイプラインを実装する。

元記事を表示

【Git】リポジトリのルートを取得する方法

## リポジトリルート

リポジトリルートの絶対パスを取得するには次のコマンドを実行します。

“`terminal
git rev-parse –show-toplevel
“`

## `.git`

また次のコマンドを実行すると`.git`のパスを取得できます。

“`terminal
git rev-parse –git-dir
“`

環境変数`GIT_DIR`が設定されている場合には`GIT_DIR`の値が出力されます。
リポジトリルートで実行すると`.git`のみが出力されそれ以外の場合には`.git`の絶対パスが出力されます。

## `.git/*`

また次のコマンドを実行すると`.git`内のファイルやディレクトリのパスを取得できます。

“`terminal
git rev-parse –git-path 取得したいファイルなどのパス
“`

以下のように実行すると`.git/info/exclude`のカレントディレクトリからの相対パスを取得できます。

“`terminal
$ git rev-parse –git-

元記事を表示

Githubのアカウント切り替え方法決定版【windows Gitbash】

# 前語り

GitとかGithubってアカウント切り替えの方法よくわからんくないですか???
初心者の僕はいきなりつまずきました
でも安心してください僕がこの記事を出したので安心です

# httpsを使った管理は今すぐやめろ!!!

これ言ってくれてる人少ないです
ていうかいませんだから僕は数時間詰みました
SSL通信を使った管理方法に切り替えたら全て解決します
https通信はクソってことだけ覚えて帰ってください
SSL通信に切り替える方法は偉大な先駆者の記事を見るのを推奨します

# シェルコマンドを使ったアカウント切り替え自動化

#!/bin/sh
git config –global user.name “name”
git config –global user.email mail
git config –list

このコードを.shにコピペして書き換えてください
後は必要なときに.shをクリックするだけで切り替えられます

ちなみにwindows環境のgitbashだけで完結したいなら
https://zenn.dev/manhattan_code/arti

元記事を表示

Gitエイリアスの設定を晒す

この記事は[上智大学エレラボ Advent Calendar 2022 第19日目](https://adventar.org/calendars/7664)の記事です。

## はじめに

上智大学を卒業してから早いもので2年が経過しました。今年もアドベントカレンダーに寄稿をしたいと連絡したところ部長からご快諾をいただきましたので執筆させていただきます。

今回の記事は小ネタでGitエイリアスに設定している内容についてです。もともとは手打ちや `Visual Studio Code` の `Source Control` で頑張っていたのですが、ある日エイリアスを設定できることを知って登録してみたところ、思った以上に便利で今ではいくつか設定しています。その中から2種類のエイリアスを紹介いたします。

## `copy-current-branch-name`

“`bash
git config –global alias.copy-current-branch-name ‘!git branch –show-current | tr -d “\n” | pbcopy && p

元記事を表示

BitbucketでPR作成時に表示されるコミットメッセージリストをPR説明テンプレート有りでも表示する

この記事は[PONOS Advent Calendar 2022](https://qiita.com/advent-calendar/2022/ponos)の19日目の記事です。
昨日は[@caramel_cafe](https://qiita.com/caramel_cafe)さんの[UnityのゲームでModが作られる手順について](https://qiita.com/caramel_cafe/private/1c007d26555c289b359d)でした。

# はじめに
弊社ではGitコード管理にBitbucketを使用しています。
Bitbucketには、プルリクエストを作成する際にデフォルトでdescriptionにマージ先ブランチとの差分コミットメッセージのリストが表示される機能があります。
私が所属しているチームでは、コミットメッセージの記入ルールがあり、このコミットメッセージがdescriptionに表示されることで、どんな対応をしたのか一目でわかるメリットがありました。

## が、しかし
プルリクエストのdescriptionにコミットメッセージが表示される条

元記事を表示

【Git】どこでignoreされているか確認する方法

## 確認方法

ignoreされているファイルがどこでignoreされているのか確認するには次のコマンドを実行します。

“`terminal
git check-ignore -v ファイルパス
“`

“`terminal
$ tree
.
├── .git
│ ├── info
│ │ └── exclude

├── .gitignore
├── example.txt
├── sample.txt
└── test.txt

$ cat .gitignore
/sample.txt

$ cat .git/info/exclude
/example.txt

$ cat ~/.config/git/ignore
/test.txt

$ git check-ignore -v *
.git/info/exclude:1:/example.txt example.txt
.gitignore:1:/sample.txt sample.txt
/Users/Username/.config/git/ignore:1:/tes

元記事を表示

pushしようとしたら拒否された

# エラー状態

“`
! [rejected] main -> main (non-fast-forward)
error: failed to push some refs to ‘https://github.com/kazu1212-star/kazu-blog.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 fetch
git rebase origin/main
“`
`git push origin main`で無事対処できました

#

元記事を表示

【ケーススタディ】マージ戦略を変えてみたらgit中級者になれた気がした

gitでえらいブランチの内容を優先して取り込みたいとき、どうしますか?

gitのケーススタディです。

gitのとあるブランチ(featureブランチ)上で開発しはじめて、結構長い時間が経ってしまいました。
その間にgitのえらいブランチ(派生元、masterブランチ)がどんどん先に進んでしまったので、
そろそろfeatureブランチにmasterブランチの内容を取り込みたいと思います。

というシチュエーションがあったので、これの解決方法を考えてみました。

## シチュエーション整理

* masterブランチからfeatureブランチが派生している
* featureブランチでは、リポジトリのうち特定の部分だけいじってある(仮に`/src/`フォルダとする)
* masterとfeatureは別々に開発されていて、どちらも結構進んでいる
* masterの内容をfeatureに取り込みたい(マージしたい)のだが、このとき次のような条件がある
* **featureブランチでいじった部分はすべてfeatureブランチの内容を優先したい**
* **それ以外はす

元記事を表示

【Git】ignoreされているか確認する方法

## 確認方法

`git status –ignored`で確認できます。

“`terminal
$ tree
.
├── example.txt
├── sample.txt
└── test.txt

$ cat .gitignore
/test.txt
/example.txt

$ git status –ignored
On branch main

No commits yet

Untracked files:
(use “git add …” to include in what will be committed)
.gitignore
sample.txt

Ignored files:
(use “git add -f …” to include in what will be committed)
example.txt
test.txt

nothing added to commit but untracked files present (

元記事を表示

git ファイルを元に戻す

https://qiita.com/shyamahira/items/a27d4a423ee6f2f736a7

git checkout HEAD — ファイル名

元記事を表示

【備忘録】git コンフリクト解消

branchをdevelopにプルリクエストを送った時にコンフリクトが起きた時の解消方法

1. git branch 現在のブランチを確認(master以外)
2. git merge origin master
3. git status
4. both modificationになっているファイルを手動で編集して保存
5. git add .
6. git commit -m “コンフリクトの解消”
7. git push origin HEAD

元記事を表示

Unityエディタ起動時にgit config –local core.autocrlf xxxを実行

2021/12/17 : 初稿
Unity : 2021.3.15f1

ソースファイルインポート時に文字コードをUTF8に書き換える、
なんてエディタ拡張は皆さんよくされていると思うのですが、
改行コードはどうされてますか?

チーム内にWindows派とMac派が混在していると、
「差分のない.csファイルが大量にSourceTreeのステージングリストに出るんだけど!」
みたいな問題を起こすことがあります。

これを解決するための第一歩ということで、
ちゃんとgitの改行コード設定をしておきましょうという話。

# やりたいこと

Unityエディタ起動時に自動でシェルスクリプトまたはバッチファイルを呼び出し、
Windowsなら
`git config –local core.autocrlf true`
Macなら
`git config –local core.autocrlf input`
を実行する。

いや、SourceTreeならSourceTree上でやればいいんだけど、
プログラマーではない人たちにとってはハードル高かったり、
クローンしなおした時に設定し

元記事を表示

OTHERカテゴリの最新記事