world/book/_book/pwsh/01_git.html
2025-05-12 05:38:44 +09:00

1900 lines
48 KiB
HTML

<!DOCTYPE HTML>
<html lang="" >
<head>
<meta charset="UTF-8">
<title>git · HonKit</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="description" content="">
<meta name="generator" content="HonKit 6.0.2">
<link rel="stylesheet" href="../gitbook/style.css">
<link rel="stylesheet" href="../gitbook/@honkit/honkit-plugin-highlight/website.css">
<link rel="stylesheet" href="../gitbook/gitbook-plugin-search/search.css">
<link rel="stylesheet" href="../gitbook/@honkit/honkit-plugin-fontsettings/website.css">
<meta name="HandheldFriendly" content="true"/>
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<link rel="apple-touch-icon-precomposed" sizes="152x152" href="../gitbook/images/apple-touch-icon-precomposed-152.png">
<link rel="shortcut icon" href="../gitbook/images/favicon.ico" type="image/x-icon">
<link rel="next" href="02_ssh.html" />
<link rel="prev" href="./" />
</head>
<body>
<div class="book honkit-cloak">
<div class="book-summary">
<div id="book-search-input" role="search">
<input type="text" placeholder="Type to search" />
</div>
<nav role="navigation">
<ul class="summary">
<li class="chapter " data-level="1.1" data-path="../">
<a href="../">
Unreal Engine Guild Book
</a>
</li>
<li class="chapter " data-level="1.2" data-path="../default/">
<a href="../default/">
default
</a>
<ul class="articles">
<li class="chapter " data-level="1.2.1" data-path="../default/00_asset.html">
<a href="../default/00_asset.html">
asset
</a>
</li>
<li class="chapter " data-level="1.2.2" data-path="../default/01_start.html">
<a href="../default/01_start.html">
start
</a>
</li>
<li class="chapter " data-level="1.2.3" data-path="../default/02_install.html">
<a href="../default/02_install.html">
install
</a>
</li>
<li class="chapter " data-level="1.2.4" data-path="../default/03_tips.html">
<a href="../default/03_tips.html">
tips
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.3" data-path="./">
<a href="./">
powershell
</a>
<ul class="articles">
<li class="chapter active" data-level="1.3.1" data-path="01_git.html">
<a href="01_git.html">
git
</a>
</li>
<li class="chapter " data-level="1.3.2" data-path="02_ssh.html">
<a href="02_ssh.html">
ssh
</a>
</li>
<li class="chapter " data-level="1.3.3" data-path="03_ttyd.html">
<a href="03_ttyd.html">
ttyd
</a>
</li>
<li class="chapter " data-level="1.3.4" data-path="04_slidev.html">
<a href="04_slidev.html">
slidev
</a>
</li>
<li class="chapter " data-level="1.3.5" data-path="05_aibot.html">
<a href="05_aibot.html">
aibot
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.4" data-path="../gasp/">
<a href="../gasp/">
game animation sample
</a>
<ul class="articles">
<li class="chapter " data-level="1.4.1" data-path="../gasp/01_character.html">
<a href="../gasp/01_character.html">
キャラクターを追加する
</a>
</li>
<li class="chapter " data-level="1.4.2" data-path="../gasp/02_jump.html">
<a href="../gasp/02_jump.html">
飛びつける高さを増やす
</a>
</li>
<li class="chapter " data-level="1.4.3" data-path="../gasp/03_vrm.html">
<a href="../gasp/03_vrm.html">
キャラクターを作る
</a>
</li>
<li class="chapter " data-level="1.4.4" data-path="../gasp/04_vmc.html">
<a href="../gasp/04_vmc.html">
モーションキャプチャで動かす
</a>
</li>
<li class="chapter " data-level="1.4.5" data-path="../gasp/05_kawaii.html">
<a href="../gasp/05_kawaii.html">
揺れものを設定する
</a>
</li>
<li class="chapter " data-level="1.4.6" data-path="../gasp/06_camera.html">
<a href="../gasp/06_camera.html">
カメラワークの設定する
</a>
</li>
<li class="chapter " data-level="1.4.7" data-path="../gasp/07_anim.html">
<a href="../gasp/07_anim.html">
アニメーションを作成する
</a>
</li>
<li class="chapter " data-level="1.4.8" data-path="../gasp/11_run.html">
<a href="../gasp/11_run.html">
アニメーションを変更する
</a>
</li>
<li class="chapter " data-level="1.4.9" data-path="../gasp/08_niagara.html">
<a href="../gasp/08_niagara.html">
niagaraでダメージを出す
</a>
</li>
<li class="chapter " data-level="1.4.10" data-path="../gasp/09_chair.html">
<a href="../gasp/09_chair.html">
椅子に座る
</a>
</li>
<li class="chapter " data-level="1.4.11" data-path="../gasp/10_stairs.html">
<a href="../gasp/10_stairs.html">
階段に登る
</a>
</li>
<li class="chapter " data-level="1.4.12" data-path="../gasp/12_weapon.html">
<a href="../gasp/12_weapon.html">
武器を装備する
</a>
</li>
<li class="chapter " data-level="1.4.13" data-path="../gasp/13_chatgpt.html">
<a href="../gasp/13_chatgpt.html">
NPCとの会話をAIにする
</a>
</li>
<li class="chapter " data-level="1.4.14" data-path="../gasp/14_jump.html">
<a href="../gasp/14_jump.html">
ジャンプの高さを変更する
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.5" data-path="../crs/">
<a href="../crs/">
control rig sample
</a>
<ul class="articles">
<li class="chapter " data-level="1.5.1" data-path="../crs/01_character.html">
<a href="../crs/01_character.html">
CRでキャラクターを動かす
</a>
</li>
<li class="chapter " data-level="1.5.2" data-path="../crs/02_boss.html">
<a href="../crs/02_boss.html">
ボスを作る
</a>
</li>
<li class="chapter " data-level="1.5.3" data-path="../crs/03_jump.html">
<a href="../crs/03_jump.html">
ボスのジャンプ攻撃を作る
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.6" data-path="../city/">
<a href="../city/">
city sample
</a>
<ul class="articles">
<li class="chapter " data-level="1.6.1" data-path="../city/01_remove.html">
<a href="../city/01_remove.html">
惑星形式のmapを作る
</a>
</li>
<li class="chapter " data-level="1.6.2" data-path="../city/02_bridge.html">
<a href="../city/02_bridge.html">
橋を作る
</a>
</li>
<li class="chapter " data-level="1.6.3" data-path="../city/03_house.html">
<a href="../city/03_house.html">
家を作る
</a>
</li>
<li class="chapter " data-level="1.6.4" data-path="../city/04_bgm.html">
<a href="../city/04_bgm.html">
BGMを作る
</a>
</li>
<li class="chapter " data-level="1.6.5" data-path="../city/05_browser.html">
<a href="../city/05_browser.html">
ブラウザを作る
</a>
</li>
<li class="chapter " data-level="1.6.6" data-path="../city/06_spline.html">
<a href="../city/06_spline.html">
惑星を動かす
</a>
</li>
<li class="chapter " data-level="1.6.7" data-path="../city/07_teleport.html">
<a href="../city/07_teleport.html">
惑星間の移動表現
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.7" data-path="../camera/">
<a href="../camera/">
gameplay camera
</a>
<ul class="articles">
<li class="chapter " data-level="1.7.1" data-path="../camera/01_close.html">
<a href="../camera/01_close.html">
もっと近づける
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.8" data-path="../ui/">
<a href="../ui/">
ui
</a>
<ul class="articles">
<li class="chapter " data-level="1.8.1" data-path="../ui/01_list.html">
<a href="../ui/01_list.html">
listview
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.9" data-path="../json/">
<a href="../json/">
json
</a>
<ul class="articles">
<li class="chapter " data-level="1.9.1" data-path="../json/01_varest.html">
<a href="../json/01_varest.html">
apiから情報を取得する
</a>
</li>
<li class="chapter " data-level="1.9.2" data-path="../json/02_atproto.html">
<a href="../json/02_atproto.html">
atprotoでloginする
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.10" data-path="../pixel/">
<a href="../pixel/">
pixel streaming
</a>
<ul class="articles">
<li class="chapter " data-level="1.10.1" data-path="../pixel/01_server.html">
<a href="../pixel/01_server.html">
基本事項
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.11" data-path="../vrm4u/">
<a href="../vrm4u/">
vrm4u
</a>
<ul class="articles">
<li class="chapter " data-level="1.11.1" data-path="../vrm4u/01_make.html">
<a href="../vrm4u/01_make.html">
キャラクターを作る
</a>
</li>
<li class="chapter " data-level="1.11.2" data-path="../vrm4u/02_yubi.html">
<a href="../vrm4u/02_yubi.html">
指の角度を調整する
</a>
</li>
<li class="chapter " data-level="1.11.3" data-path="../vrm4u/03_hair.html">
<a href="../vrm4u/03_hair.html">
前髪の角度を調整する
</a>
</li>
<li class="chapter " data-level="1.11.4" data-path="../vrm4u/04_outline.html">
<a href="../vrm4u/04_outline.html">
アウトラインを追加する
</a>
</li>
<li class="chapter " data-level="1.11.5" data-path="../vrm4u/05_toon.html">
<a href="../vrm4u/05_toon.html">
トーンを変える
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.12" data-path="../plan/">
<a href="../plan/">
有料アセット
</a>
<ul class="articles">
<li class="chapter " data-level="1.12.1" data-path="../plan/01_flying.html">
<a href="../plan/01_flying.html">
superhero fligth animations
</a>
</li>
<li class="chapter " data-level="1.12.2" data-path="../plan/02_uds.html">
<a href="../plan/02_uds.html">
ultra dynamic sky
</a>
</li>
<li class="chapter " data-level="1.12.3" data-path="../plan/03_ocean.html">
<a href="../plan/03_ocean.html">
ocean waves
</a>
</li>
<li class="chapter " data-level="1.12.4" data-path="../plan/04_item.html">
<a href="../plan/04_item.html">
nice interaction system
</a>
</li>
<li class="chapter " data-level="1.12.5" data-path="../plan/05_chair.html">
<a href="../plan/05_chair.html">
replicated interaction kit vol 3
</a>
</li>
<li class="chapter " data-level="1.12.6" data-path="../plan/06_dragonik.html">
<a href="../plan/06_dragonik.html">
dragon ik plugin
</a>
</li>
<li class="chapter " data-level="1.12.7" data-path="../plan/07_wsp.html">
<a href="../plan/07_wsp.html">
worldscape plugin
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.13" data-path="../unity/">
<a href="../unity/">
unity
</a>
<ul class="articles">
<li class="chapter " data-level="1.13.1" data-path="../unity/01_fbx.html">
<a href="../unity/01_fbx.html">
animation clipをueで使う
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.14" data-path="../blender/">
<a href="../blender/">
blender
</a>
<ul class="articles">
<li class="chapter " data-level="1.14.1" data-path="../blender/01_model.html">
<a href="../blender/01_model.html">
素体を作る
</a>
</li>
<li class="chapter " data-level="1.14.2" data-path="../blender/02_costume.html">
<a href="../blender/02_costume.html">
衣装を着せる
</a>
</li>
<li class="chapter " data-level="1.14.3" data-path="../blender/03_vrm.html">
<a href="../blender/03_vrm.html">
vrmで統合する
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.15" data-path="../web/">
<a href="../web/">
web
</a>
<ul class="articles">
<li class="chapter " data-level="1.15.1" data-path="../web/01_three.html">
<a href="../web/01_three.html">
glbをwebに表示する
</a>
</li>
<li class="chapter " data-level="1.15.2" data-path="../web/02_three-vrm.html">
<a href="../web/02_three-vrm.html">
vrmをwebに表示する
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.16" data-path="../issue/">
<a href="../issue/">
issue
</a>
<ul class="articles">
<li class="chapter " data-level="1.16.1" data-path="../issue/ue/">
<a href="../issue/ue/">
ue
</a>
<ul class="articles">
<li class="chapter " data-level="1.16.1.1" data-path="../issue/ue/ue_01.html">
<a href="../issue/ue/ue_01.html">
error II-E1001
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.16.2" data-path="../issue/gasp/">
<a href="../issue/gasp/">
game animation sample
</a>
<ul class="articles">
<li class="chapter " data-level="1.16.2.1" data-path="../issue/gasp/gasp_01.html">
<a href="../issue/gasp/gasp_01.html">
GameplayCameraをdisableにする
</a>
</li>
<li class="chapter " data-level="1.16.2.2" data-path="../issue/gasp/gasp_02.html">
<a href="../issue/gasp/gasp_02.html">
cameraが急接近する
</a>
</li>
<li class="chapter " data-level="1.16.2.3" data-path="../issue/gasp/gasp_03.html">
<a href="../issue/gasp/gasp_03.html">
characterのcomponentが初期化される
</a>
</li>
<li class="chapter " data-level="1.16.2.4" data-path="../issue/gasp/gasp_04.html">
<a href="../issue/gasp/gasp_04.html">
IA_Sprintのダッシュができなくなる
</a>
</li>
<li class="chapter " data-level="1.16.2.5" data-path="../issue/gasp/gasp_05.html">
<a href="../issue/gasp/gasp_05.html">
traversableが機能しなくなる
</a>
</li>
<li class="chapter " data-level="1.16.2.6" data-path="../issue/gasp/gasp_06.html">
<a href="../issue/gasp/gasp_06.html">
キャラがカメラ視点で勝手に動く
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.16.3" data-path="../issue/city/">
<a href="../issue/city/">
city sample
</a>
<ul class="articles">
<li class="chapter " data-level="1.16.3.1" data-path="../issue/city/city_01.html">
<a href="../issue/city/city_01.html">
buildが遅い場合
</a>
</li>
<li class="chapter " data-level="1.16.3.2" data-path="../issue/city/city_02.html">
<a href="../issue/city/city_02.html">
ue5.5ではbuildが通らない
</a>
</li>
<li class="chapter " data-level="1.16.3.3" data-path="../issue/city/city_03.html">
<a href="../issue/city/city_03.html">
問題が起こったときにresetする
</a>
</li>
<li class="chapter " data-level="1.16.3.4" data-path="../issue/city/city_04.html">
<a href="../issue/city/city_04.html">
playerが地面に埋まってしまう
</a>
</li>
<li class="chapter " data-level="1.16.3.5" data-path="../issue/city/city_05.html">
<a href="../issue/city/city_05.html">
他のmapとの統合
</a>
</li>
<li class="chapter " data-level="1.16.3.6" data-path="../issue/city/city_06.html">
<a href="../issue/city/city_06.html">
BGMを変更する
</a>
</li>
<li class="chapter " data-level="1.16.3.7" data-path="../issue/city/city_07.html">
<a href="../issue/city/city_07.html">
表示されなくなったサイト
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.16.4" data-path="../issue/blender/">
<a href="../issue/blender/">
blender
</a>
<ul class="articles">
<li class="chapter " data-level="1.16.4.1" data-path="../issue/blender/blender_01.html">
<a href="../issue/blender/blender_01.html">
衣装の背後に黒いチラつきが発生する
</a>
</li>
<li class="chapter " data-level="1.16.4.2" data-path="../issue/blender/blender_02.html">
<a href="../issue/blender/blender_02.html">
ueで読み込むと一部のmaterialが正しく表示されない
</a>
</li>
<li class="chapter " data-level="1.16.4.3" data-path="../issue/blender/blender_03.html">
<a href="../issue/blender/blender_03.html">
髪の毛が頭に追従しなくなる事がある
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.16.5" data-path="../issue/vrm4u/">
<a href="../issue/vrm4u/">
vrm4u
</a>
<ul class="articles">
<li class="chapter " data-level="1.16.5.1" data-path="../issue/vrm4u/vrm4u_01.html">
<a href="../issue/vrm4u/vrm4u_01.html">
customで衣装の半分が灰色になる
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.16.6" data-path="../issue/wsp/">
<a href="../issue/wsp/">
worldscape plugin
</a>
<ul class="articles">
<li class="chapter " data-level="1.16.6.1" data-path="../issue/wsp/wsp_01.html">
<a href="../issue/wsp/wsp_01.html">
地上のちらつき
</a>
</li>
</ul>
</li>
</ul>
</li>
<li class="chapter " data-level="1.17" data-path="../project/">
<a href="../project/">
project
</a>
<ul class="articles">
<li class="chapter " data-level="1.17.1" data-path="../project/01_ep.html">
<a href="../project/01_ep.html">
自己紹介
</a>
</li>
<li class="chapter " data-level="1.17.2" data-path="../project/02_ep.html">
<a href="../project/02_ep.html">
最初の体験
</a>
</li>
<li class="chapter " data-level="1.17.3" data-path="../project/03_ep.html">
<a href="../project/03_ep.html">
毎日プレイ
</a>
</li>
<li class="chapter " data-level="1.17.4" data-path="../project/04_ep.html">
<a href="../project/04_ep.html">
自由と不自由
</a>
</li>
<li class="chapter " data-level="1.17.5" data-path="../project/05_ep.html">
<a href="../project/05_ep.html">
ロードマップ
</a>
</li>
<li class="chapter " data-level="1.17.6" data-path="../project/06_ep.html">
<a href="../project/06_ep.html">
アイテムボックス
</a>
</li>
<li class="chapter " data-level="1.17.7" data-path="../project/07_ep.html">
<a href="../project/07_ep.html">
テストゲーム
</a>
</li>
<li class="chapter " data-level="1.17.8" data-path="../project/01_youtube.html">
<a href="../project/01_youtube.html">
youtube
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="1.18" data-path="../end/">
<a href="../end/">
end
</a>
</li>
<li class="divider"></li>
<li>
<a href="https://github.com/honkit/honkit" target="blank" class="gitbook-link">
Published with HonKit
</a>
</li>
</ul>
</nav>
</div>
<div class="book-body">
<div class="body-inner">
<div class="book-header" role="navigation">
<!-- Title -->
<h1>
<i class="fa fa-circle-o-notch fa-spin"></i>
<a href=".." >git</a>
</h1>
</div>
<div class="page-wrapper" tabindex="-1" role="main">
<div class="page-inner">
<div id="book-search-results">
<div class="search-noresults">
<section class="normal markdown-section">
<h1 id="git">git</h1>
<p>gitはバージョン(version)管理ツールです。linus(linuxを作った人)が開発しています。</p>
<p>projectにverを付けて、いつでも古いverに戻したり、あるいは新しい機能を別の場所(branch)で開発し、開発が完了したら統合(merge)するようにしたりします。そのほうがprojectが管理しやすいからです。</p>
<pre><code class="lang-sh">$ winget install git.git
</code></pre>
<h2 id="tui">tui</h2>
<p><a href="https://github.com/jesseduffield/lazygit" target="_blank">jesseduffield/lazygit</a>を使います。</p>
<pre><code>$ winget install jesseduffield.lazygit
$ lazygit
</code></pre><p><code>q</code>で終了です。<code>vim</code>の操作感で使用できます。</p>
<h2 id="gitの解説">gitの解説</h2>
<p>gitでやることは基本的なことさえ理解していればokです。</p>
<p>ようはコードの修正履歴の管理です。</p>
<p>基本的にprojectフォルダのrootから操作を行います。</p>
<p>ここに<code>git init</code><code>.git/</code>を作成し、<code>.git/config</code>が設定ファイルになります。</p>
<blockquote>
<p>$project/.git/config</p>
</blockquote>
<pre><code class="lang-sh">$ <span class="hljs-built_in">cd</span> <span class="hljs-variable">$project</span>
$ git init
$ git remote add origin https://github.com/OWNER/REPOSITORY.git
---
$ <span class="hljs-built_in">cat</span> .git/config
[remote <span class="hljs-string">"origin"</span>]
url = https://github.com/OWNER/REPOSITORY.git
fetch = +refs/heads/*:refs/remotes/origin/*
</code></pre>
<p><code>git remote add</code><code>.git/config</code>に書き込んでいるだけなので、直接ファイルを編集しても構いません。git-commandは基本的に<code>.git/</code>以下のファイルを変更しているに過ぎないからです。</p>
<h3 id="config">config</h3>
<p>gitは変更履歴ですが、誰がどのような変更をしたかわかるようになっています。</p>
<p>最初にuserを設定しましょう。mailが必要です。これは、<code>.git/config</code>に書いてもいいですが、共通する設定は<code>~/.gitconfig</code>に書いておくと便利です。</p>
<blockquote>
<p>~/.gitconfig</p>
</blockquote>
<pre><code class="lang-sh">[user]
name = syui
email = syui@users.noreply.github.com
</code></pre>
<p>もしmailを公開したくない場合は、<code>$USER@users.noreply.github.com</code>にしておくとよいでしょう。</p>
<h3 id="commit">commit</h3>
<pre><code class="lang-sh"><span class="hljs-comment"># 追加</span>
$ <span class="hljs-built_in">echo</span> <span class="hljs-comment"># title &gt; README.md</span>
$ git add README.md
<span class="hljs-comment"># コミット</span>
$ git commit -m <span class="hljs-string">"first"</span>
<span class="hljs-comment"># コミットを確定</span>
$ git push -u origin master
</code></pre>
<p>まずaddでファイルをgit管理に追加しています。</p>
<p>次に、その変更を名前をつけて保存します。これをcommitといいます。</p>
<p>最後にpushして、localに保存されている変更履歴がurlにupload(アップロード)されます。</p>
<p>ここまでが一連の流れです。履歴の確認は<code>git log</code>です。</p>
<pre><code class="lang-sh">$ git <span class="hljs-built_in">log</span>
</code></pre>
<h3 id="branch">branch</h3>
<p>次に、修正を本体のある部分から分離(branch)して行い、最後に本体に取り込むまでの流れを説明します。</p>
<pre><code class="lang-sh">$ git branch -b new-version
---
<span class="hljs-comment"># コード(ファイル)を修正する</span>
$ vim README.md
----
<span class="hljs-comment">#これを繰り返す</span>
$ git add .
$ git commit -m test-1
$ git add .
$ git commit -m test-2
$ git add .
$ git commit -m test-3
---
<span class="hljs-comment"># 修正をまとめる</span>
$ git rebase @~3
r a45ba54 test-1
f c3d7514 test-2
f 21b8b59 test-3
update new-version (rでタイトルを変更)
---
$ git push -f origin new-version
---
</code></pre>
<p>そして、pull-requestを作成し、mergeで本体(origin/master)に取り込みます。</p>
<pre><code class="lang-sh"><span class="hljs-comment"># branchはいつでも切り替えられる</span>
$ git branch
$ git checkout master
<span class="hljs-comment"># 削除も簡単。変更が取り込まれたら削除して構わない</span>
$ git branch -D new-version
</code></pre>
<h3 id="push--pull">push / pull</h3>
<p>gitのすべては<code>.git/</code>に保存されています。<code>.git/config</code>で設定します。</p>
<p>push/pull先を変更してみます。</p>
<pre><code class="lang-diff"><span class="hljs-addition">+[remote "origin"]</span>
<span class="hljs-addition">+ url = git@git.syui.ai:syui/test.git</span>
<span class="hljs-addition">+ fetch = +refs/heads/*:refs/remotes/origin/*</span>
<span class="hljs-deletion">-[remote "origin"]</span>
<span class="hljs-deletion">- url = https://github.com/OWNER/REPOSITORY.git</span>
<span class="hljs-deletion">- fetch = +refs/heads/*:refs/remotes/origin/*</span>
</code></pre>
<pre><code class="lang-sh">$ git pull
</code></pre>
<p>なお、urlのprotocolはhttpのほか<code>ssh@github.com</code><code>git@github.com</code>などがあります。ただし、urlはprotocolのruleに基づくので注意してください。</p>
<pre><code class="lang-diff"><span class="hljs-addition">+ git@github.com:syui</span>
<span class="hljs-deletion">- git@github.com/syui</span>
</code></pre>
<p>ssh, gitは鍵認証でpasswordを省略できます。自身が管理するprojectは<code>git</code>にしましょう。</p>
<h3 id="conflict">conflict</h3>
<p>gitを使っていて一番厄介な事は、おそらくconflict(衝突)でしょう。</p>
<p>例えば、AさんとBさん、Cさんの三人で開発していたとしましょう。</p>
<p>AさんとBさんは二人とも同じcommitからbranchを切って、作業、つまり、commitを進めていました。一つの丸(commit)があり、そこから別々に枝分かれ(branch)して、丸(commit)が進むイメージです。</p>
<p>ここで、Bさんのほうが早くにpull-reqを出し、新しいコードが本体にmerge、取り込まれました。</p>
<p>次にAさんがpull-reqを出します。しかし、mergeしようとすると、できません。conflictが発生したのです。</p>
<p>AさんもBさんも、同じ箇所に別々の機能を実装しようとしていて、Bさんの変更が先に取り込まれていたからです。</p>
<p>さて、この解消にはいくつか方法があります。Aさんがconflictを解消するコードに修正するか、mergeするCさんが解消するかです。</p>
<p>通常は、Aさんがbranchのcommitを最新のコードに対応したものに作り直します。あるいはpull-reqそのものを作り直すかです。通常は前者になります。branchのcommitを進め、conflictが発生しないように修正するのです。この場合、pull-reqを作り直す必要はありません。</p>
<p>修正は、例えば、他の場所に機能を移すか、Bさんの機能を合体させたものを作るかなどの方法があります。</p>
</section>
</div>
<div class="search-results">
<div class="has-results">
<h1 class="search-results-title"><span class='search-results-count'></span> results matching "<span class='search-query'></span>"</h1>
<ul class="search-results-list"></ul>
</div>
<div class="no-results">
<h1 class="search-results-title">No results matching "<span class='search-query'></span>"</h1>
</div>
</div>
</div>
</div>
</div>
</div>
<a href="./" class="navigation navigation-prev " aria-label="Previous page: powershell">
<i class="fa fa-angle-left"></i>
</a>
<a href="02_ssh.html" class="navigation navigation-next " aria-label="Next page: ssh">
<i class="fa fa-angle-right"></i>
</a>
</div>
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"git","level":"1.3.1","depth":2,"next":{"title":"ssh","level":"1.3.2","depth":2,"path":"pwsh/02_ssh.md","ref":"pwsh/02_ssh.md","articles":[]},"previous":{"title":"powershell","level":"1.3","depth":1,"path":"pwsh/README.md","ref":"pwsh/README.md","articles":[{"title":"git","level":"1.3.1","depth":2,"path":"pwsh/01_git.md","ref":"pwsh/01_git.md","articles":[]},{"title":"ssh","level":"1.3.2","depth":2,"path":"pwsh/02_ssh.md","ref":"pwsh/02_ssh.md","articles":[]},{"title":"ttyd","level":"1.3.3","depth":2,"path":"pwsh/03_ttyd.md","ref":"pwsh/03_ttyd.md","articles":[]},{"title":"slidev","level":"1.3.4","depth":2,"path":"pwsh/04_slidev.md","ref":"pwsh/04_slidev.md","articles":[]},{"title":"aibot","level":"1.3.5","depth":2,"path":"pwsh/05_aibot.md","ref":"pwsh/05_aibot.md","articles":[]}]},"dir":"ltr"},"config":{"gitbook":"*","theme":"default","variables":{},"plugins":["livereload"],"pluginsConfig":{"livereload":{},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56},"embedFonts":false},"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"}},"file":{"path":"pwsh/01_git.md","mtime":"2025-04-25T12:30:43.299Z","type":"markdown"},"gitbook":{"version":"6.0.2","time":"2025-05-07T15:46:58.825Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>
<noscript>
<style>
.honkit-cloak {
display: block !important;
}
</style>
</noscript>
<script>
// Restore sidebar state as critical path for prevent layout shift
function __init__getSidebarState(defaultValue){
var baseKey = "";
var key = baseKey + ":sidebar";
try {
var value = localStorage[key];
if (value === undefined) {
return defaultValue;
}
var parsed = JSON.parse(value);
return parsed == null ? defaultValue : parsed;
} catch (e) {
return defaultValue;
}
}
function __init__restoreLastSidebarState() {
var isMobile = window.matchMedia("(max-width: 600px)").matches;
if (isMobile) {
// Init last state if not mobile
return;
}
var sidebarState = __init__getSidebarState(true);
var book = document.querySelector(".book");
// Show sidebar if it enabled
if (sidebarState && book) {
book.classList.add("without-animation", "with-summary");
}
}
try {
__init__restoreLastSidebarState();
} finally {
var book = document.querySelector(".book");
book.classList.remove("honkit-cloak");
}
</script>
<script src="../gitbook/gitbook.js"></script>
<script src="../gitbook/theme.js"></script>
<script src="../gitbook/gitbook-plugin-livereload/plugin.js"></script>
<script src="../gitbook/gitbook-plugin-search/search-engine.js"></script>
<script src="../gitbook/gitbook-plugin-search/search.js"></script>
<script src="../gitbook/gitbook-plugin-lunr/lunr.min.js"></script>
<script src="../gitbook/gitbook-plugin-lunr/search-lunr.js"></script>
<script src="../gitbook/@honkit/honkit-plugin-fontsettings/fontsettings.js"></script>
</body>
</html>