-
Notifications
You must be signed in to change notification settings - Fork 0
/
clone.tex
171 lines (117 loc) · 4.02 KB
/
clone.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
% This is part of the ``Git First Step''.
% Copyright 2014, 2020 Yoshida Shin.
% See the file slide.tex for copying conditions.
\begin{frame}<1-3>[t]{clone}{複数人で開発する}
repository のコピーを作成
\vspace{2ex}
\onslide*<1>{
clone repository の作成
\vspace{2ex}
\$ git clone \~{}/remote\_rep \~{}/clone\_rep
\$ cd \~{}/clone\_rep
}
\onslide*<2>{
現在の repository 一覧を表示
\vspace{2ex}
\$ git branch -a
* master
\onslide<99>{* }remotes/origin/HEAD -\textgreater origin/master
\onslide<99>{* }remotes/origin/master
\onslide<99>{* }remotes/origin/develop
}
\onslide*<3>{
develop branch の作成
\vspace{2ex}
\$ git branch develop remotes/origin/develop
}
\end{frame}
\begin{frame}[t]{中で起きている事}{複数人で開発する}
\begin{columns}
\begin{halfcolumn}
\begin{repository}{remote}
\node (c6) [commit, rectangle split, rectangle split parts=2] at (0em, 11ex){
\commitmessage{Add f.}
\nodepart{second}{master{\HEAD}}
};
\node (c5) [commit, rectangle split, rectangle split parts=2] at (0em, -1ex){
\commitmessage{Merge branch 'develop'}
\nodepart{second}{develop}
};
\draw (c5) -- (c6);
\end{repository}
\end{halfcolumn}
\begin{column}{0.55\textwidth}
\begin{repository}{clone}
\onslide<5->{
\node (c6) [commit, rectangle split, rectangle split parts=3] at (0em, 10ex){
\commitmessage{Add f.}
\nodepart{second}{master{\HEAD}}
\nodepart{third}{\remotebranch{remotes/origin/master remotes/origin/HEAD}}
};
}
\onslide*<3-4>{
\node (c6) [commit, rectangle split, rectangle split parts=2] at (0em, 10ex){
\commitmessage{Add f.}
\nodepart{second}{\remotebranch{remotes/origin/master remotes/origin/HEAD}}
};
}
\onslide<8->{
\node (c5) [commit, rectangle split, rectangle split parts=3] at (0em, 0ex){
\commitmessage{Merge branch 'develop'}
\nodepart{second}{develop}
\nodepart{third}{\remotebranch{remotes/origin/develop}}
};
}
\onslide*<3-7>{
\node (c5) [commit, rectangle split, rectangle split parts=2] at (0em, 0ex){
\commitmessage{Merge branch 'develop'}
\nodepart{second}{\remotebranch{remotes/origin/develop}}
};
}
\onslide*<3->{\draw (c5) -- (c6);}
\end{repository}
\end{column}
\end{columns}
\vspace{2ex}
\onslide*<1-5>{
\$ git clone \~{}/remote\_rep \~{}/clone\_rep
\$ cd \~{}/clone\_rep
\vspace{2ex}
}
\onslide*<2-3>{
remote\_rep の全 branch, HEAD を
remote branch としてコピー
}
\onslide*<4-5>{remotes/origin/HEAD を元に master branch を作成}
\onslide*<6>{
\$ git branch -a
\code{
* master
\onslide<99>{* }remotes/origin/HEAD -\textgreater origin/master
\onslide<99>{* }remotes/origin/develop
\onslide<99>{* }remotes/origin/master
}
}
\onslide*<7-8>{
\$ git branch develop remotes/origin/develop
\vspace{2ex}
remotes/origin/develop を元に develop branch を作成
}
\end{frame}
\begin{frame}[t]{git clone コマンド補足}{複数人で開発する}
\begin{itemize}
\item git clone \textit{URI} [\textit{directory}]
で remote repository の clone を directory に作成
directory のデフォルトは URI の reopsitory 名
git の top directory はいつでも変更してよい
\vspace{2ex}
\item git clone 時に指定した URI は、origin というエイリアスで登録される
\vspace{2ex}
\item git branch -a
で remote branch を含む全ての branch が閲覧可能
\vspace{2ex}
\item master 以外の必要な branch は
git branch \textit{branch-name} \textit{start-point} で作成
(remote branch は閲覧専用として使用するべき)
\end{itemize}
\end{frame}