-
Notifications
You must be signed in to change notification settings - Fork 10
/
0116.txt
252 lines (252 loc) · 11.5 KB
/
0116.txt
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
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
예 안녕하세요 포프입니다
오늘 할 얘기는
어쩌면 저번에 만들었던 그
"올바른 코드리뷰 프로세스" 이런 얘기 했었잖아요
그러면서 뭐 제가 Fabricator 이런 거 소개도 드렸고
그 말씀을 드린 다음에 현존하는 그런
코드 리뷰 시스템을 좀 더 둘러봤어요
이제 공짜죠
제가 빗버켓(Bitbucket)이나
깃허브(GitHub) 쪽은 많이 봤었는데
제가 예전에 머큐리얼(Mercurial)이나 깃(git)을
개인적으로 호스팅할 사람이라면
개인적으로 코드 리포를 만들 사람이라면
빗버켓(Bitbucket)도 좋지만
뭐 여러 가지 제한이 있고
뭐 빅파일 지원 안 되고
뭐 크기 제한 있는 것도 문제가 있고
깃허브(GitHub)는 프라이빗 리포로 할려면
돈을 내야 되는 것 때문에
킬른(Kiln)이라는 걸 추천해 드렸어요
킬른(Kiln)이 거의 무제한으로 지원해 주는 것 같고
그리고 BIG File Extension도 있고
거기다 이제 뭐 코드 리뷰 시스템도 있어서
두 명까지는 무난히 쓸 수
있지 않을까란 말씀을 드렸는데
제가 코드 리뷰 시스템을 이런 게 있다고만
봤지 실제 써 본 적은 없거든요
근데 최근에 한번 그거를 써 볼 일이 있었어요
그냥 혼자 이렇게 테스트 삼아서
과연 이게 어떤가 하고 써 봤는데
그 써 본 느낌으로는
솔직히 킬른(Kiln)의 코드 리뷰 시스템은
굉장히 안 좋더라고요
어찌 보면 예전에 뭐
저번 편에 말했듯이 무슨 코드 콜라보레이터
(CodeCollaborator)라든가 크루셔블(Crucible) 이런 식의
좀 예전 스타일의 UI라든가 뭐 그런 것도 있고
코드 리뷰를 할 때 그냥
inline으로 곧바로 할 수 있는 방법은 없는데
그니까 inline으로 코드 리뷰를 하면서 코멘트를 달면은
diff 뷰를 보다 거기 딱 나와야 편하잖아요
그게 아니라 새로운 코드 리뷰 리퀘스트를 열고
거기서 이제 저 라인을 봐라라고
링크를 걸 수 있는 그 정도뿐이지
실제 코드를 읽다가 그 자체
코멘트가 안 보이는 그런 것도 있고 해서
굉장히 좀 오래돼 보이는 코드 리뷰 시스템?
이런 느낌이 있더라고요
그래서 어찌 보면은
말 그대로 그냥
팀 간에 열심히 뭔가를 할 때는 소규모 팀에서
차라리 빗버켓(Bitbucket)이 낫지 않나
싶은 생각이 좀 더 들었고
그래서 일단
뭐
어느 경우나 자기 용도에 맞는 걸
찾아 써야 되는 게 중요하겠죠
혼자 개인적으로 호스팅할 거고
그냥 아무거나 막 넣고 싶으면
당연히 킬른(Kiln)이 좋다고 보고
팀 인원 두 명이서 같이 일할 때
코드 리뷰를 서로 봤으면 좋겠다면은
킬른(Kiln)도 가능하지만 코드 리뷰 기능을 좀 보면
빗버켓(Bitbucket)이 더 나은 것 같고
뭐 팀원이 다섯 명까지 늘어나면 빗버켓
(Bitbucket)밖에 얘기가 없고요 사실은 뭐
빗버켓(Bitbucket)은 다섯 명까지
프라이빗 리포를 지원하고
아마 친구 추가해서 뭐 이러면
일곱 명인가 여덟 명까지 될 거에요
근데 그건 아직 있는지 모르겠고
다섯 명은 확실히 프라이빗 리포,
수는 무제한,
대신 리포 하나당 2GB라는 제한은 있어요
그래서 이제 머큐리얼(Mercurial)이나
깃(git) 써 보신 분들은 알겠지만
머큐리얼(Mercurial)이나 깃(git) 자체에 이제
바이너리를 넣는다는 것 자체가
잘못됐다라는 말도 많이들 해요
그래서 저도 그걸 생각을 많이 해 봤는데
그래서 어떤 회사 같은 경우에는
그니까 뭐
보통 이제
머큐리얼(Mercurial)이나 깃(git)은
리포가 작은 게 좋다고 얘기를 하니까
라이브러리마다 리포를 따로 만들어서,
다른 뭐 refer 리포 하나 만들어서
그 안에 서브 리포로 넣고
프로젝트를 구성하는 경우가 많고요
이제 거기서 가장 큰 문제가 있는 건
바이너리 폴더 예를 들어서
포토샵 파일이라든가 뭐 이미지 파일
같은 거 어떻게 넣을 거냐
뭐 저희 예전 같은 건 서브버전
(Subversion)에 밀어 넣었지만
괜히 쓸데없이 그거를 서브버전(Subversion)에
밀어 넣을 필요가 없다고 생각하시는 분도 있고
심지어는 바이너리 자체를 왜 코드..
아니
버전 컨트롤이 필요하냐
얘기를 하시는 분도 있고
뭐 저는 약간은 필요하다고 보는데
뭐 스마트하게 선택을 해야겠지만
제가 요즘 들어 생각하는 거는
뭐 몇몇 회사에서 그러고 있듯이
그런 바이너리들은 차라리 드랍박스라든가
박스닷컴에 넣으면 어떻나 생각이 많이 들어요
이제 뭐 드랍박스 용량 제한 문제도 있겠지만
박스닷컴 같은 경우는
뭐 안드로이드 프로모션해 갖고 가입하신 분들은
50GB 다운로드 용량이 있을 거거든요
아 다운로드 용량이 아니라 크기죠
그리고 뭐 한 달에 10GB인가 뭐 다운이 되게 할 거고
1GB인가? 기억도 안 나네
그래서
박스닷컴이나 뭐 드랍박스나
싱크를 데스크탑에 쉽게 할 수 있어요
그리고 이제
아 뭐
싱크를 한 다음에는 이제 물론
문제는 이제 그 싱크하는 디렉토리를
곧바로 프로젝트 디렉토리에 연결은 못 하죠
그런 경우에는 그냥
프로젝트 디렉토리에서
그 심볼릭 링크라고 있죠
심볼릭 링크 만들어 갖고 그거를
곧바로 드랍박스나 박스닷컴 싱크 폴더에 있는 포크
중에 폴더 하나 연결하면은 똑같은 활용을 할 수 있죠
그리고 이제 그 생각을 하다가
최근에 또 본 게
용량 제한 있고 트랜스퍼 제한 있고 이런 게 있잖아요
그래서 차라리 이거를 아예 없게
해 보면 어떨까라는 생각이 들어서
뭐 개인 서버 돌리시는 분도 있고 다양한데
제가 요즘 들어 본 것 중에 굉장히 괜찮은 거는
그 빗토렌트(BitTorrent) 아시잖아요
빗토렌트(BitTorrent)에서 그 프로토콜을 그대로 가져다가 빗토렌트 싱크(BitTorrent Sync)라는 걸 만들었어요
드랍박스나 개념은 똑같은데
드랍박스처럼 어디 서버가 있는 게 아니라
그냥 피어죠
이 피어에 있는 파일과 저 피어에
있는 파일을 서로 교환하는 거
그래서 만약에
이미 뭐 게임을 위해 서버를 돌리시거나
집에서 서버 하나 돌리시는 분들은
그냥 그거를 피어 하나 켜 놓으면
그 디렉토리를 키를 나눠 갖고
서로 줘 갖고 공유한다 그러더라고요
그래서 어떤 클라이언트가 이 키를 똑같이
갖고 있으면 서로 싱크를 하는 거에요
만약에 뭐 개발하는 사람들
컴퓨터가 주로 언제나 켜져 있다?
그러면 뭐 제가 볼 때는 그 빗토렌트 싱크(BitTorrent
Sync)로 하면은 거의 언제나 싱크가 될 것 같고
그게 아니라 그냥 컴퓨터 한 대가 언제나 켜 있는
사람이 있다면 뭐 그것도 나쁘지 않고
그래서 만약에 제가 아직도 개인적으로
켜서 돌리고 있는 무슨 서버가 하나 있다면
저 같은 경우는 빗토렌트 싱크(BitTorrent Sync)로
해 갖고 박스닷컴 대신에 그걸 해서
뭐 bandwidth라든가 용량 제한 없이
해 보면 어떨까 생각이 들고요
이제 뭐
그렇게 바이너리 서로 교환하는 거야
언제나 큰 문제는 컨플릭트에요
컨플릭트하고 버전
예를 들어서 드랍박스 경우는
버전을 서로 먹여 줬기 때문에
언제나 버전을 리버트를 할 수가 있잖아요
그래서 어떤 의미에서는 게임 개발에
쓰기는 꽤 나쁘지 않은 것 같고
그리고 컨플릭트도 서로 나면은
서로 컨플릭트가 났다고 알려 주기도 하고
박스닷컴은 버전 돌아갈 수 있는 거는
제 기억으로는 돈을 내야만 되는 서비스일 거에요
그래서 박스닷컴을 쓸 때는 좀 더 조심해야 되지 않을까
한번 지워지면 돌아갈 수 있는
방법이 없지 않나 생각이 들고
그리고 뭐 바이너리의 그런 버전 컨트롤이
중요한 것도 열심히 생각을 해 봐야 되는 거고
그래서
그 외에 이제
박스닷컴도 제가 알기론 컨플릭트가 나는 경우에는
그래도 컨플릭트가 났다고 서로 알려 주고
어떻게 메뉴얼하게 프로세스를 하든가
그렇게 얘기를 할 거에요
그래서 뭐 그것도 나쁘진 않은 것 같고
빗토렌트 싱크(BitTorrent Sync)는
요번에 보면서 느꼈던 게
컨플릭트가 났을 때 이걸 왜 서로 이렇게
해결해 주는 알고리즘 자체가 없지 않나
메커니즘 자체가 없지 않나 생각이 드는데
그냥 타임스탬프가 최신인 걸로 그냥 덮어쓰는 것 같아요
그래서 그걸 보다가 느낀 게
과연 이게 올바른 behavior일까
아닐까를 잘 모르겠는 거에요
게임 개발에서도 보통은
서브버전(Subversion) 같은 거 쓸 때 바이너리에서
컨플릭트 나면은 해결할 방법이 없잖아요 사실은
어느 쪽 한 쪽 걸로 덮어써야 되는데
그전 사람 걸 덮어쓰든지
내 걸 덮어쓰든지 그게 전부거든요
그래서 과연 이거를..
바이너리에서는 정말 이게 옳은 방법일 수도
있겠다 생각이 들어 갖고 참 애매해요
바이너리 자체가 이제 merge가 잘 안 되니까
그래서 어찌 보면은 모든 데이터 파일을 요즘은
점점 텍스트로 가고 있는 경우도 그런 경우 같긴 한데
어쨌든 제가 오늘 할려고 했던 말은
킬른(Kiln)의 코드 리뷰 시스템이
그렇게 안 좋아 갖고 생각보다
어찌 보면 빗버켓(Bitbucket)으로 그냥 가면서
라지 파일 같은 경우는 이제 지원이 안 되니까
그런 걸 하기 위해 차라리 라지 파일 폴더를
뭐 드랍박스 싱크 폴더라든가
박스닷컴 싱크 폴더에 연결해 갖고 쓰는 게
좀 더 좋지 않을까 이 생각이 들었고
그리고
그게 아니더라도 이제 빗토렌트 싱크
(BitTorrent Sync)라는 것도 있으니까
한 번쯤은 그냥 자기 자체..
클라우드 스토리지라고 할 수 없는데
뭐 피어 투 피어 싱크(peer to peer sync)니까
뭐 어찌 보면 클라우드라고도 할 수도 있고
모르겠어요
그래서 그것도 나쁘지 않다 생각이 들고
오히려 지금 드는 생각은 빗토렌트 싱크
(BitTorrent Sync)가 가장 좋은 거는 이제
부모님들이 이제 멀리 계실 때
저 같은 경우는 부모님들이 멀리 계시거든요
그러면 이제 부모님들이 가끔 뭐
보시고 싶어 하시는 거 있잖아요
뭐 어떤 영화를 보시고 싶으시다거나 이러실 때
제 영화를 쉽게 그냥 넣어 드리면
알아서 그쪽에 싱크가 돼서 어머니가 볼 수 있는
그런 방법도 나쁘지 않겠다 생각이 들더라고요
그래서
뭐
제 생각에는
제가 어머니한테 파일 드리고 싶을 때
드랍박스에다 드랍시켜 드리면
이제 어머니가 가져다 쓰시긴 하는데
그런 방법 말고
차라리 빗토렌트 싱크로(BitTorrent Sync)
그냥 아예 언제라도 싱크가 되게 만들면
괜찮지 않을까 생각도 들고
뭐
최근 그렇게 알아본 코드 리뷰 시스템
무슨 뭐 싱크 시스템 그거에 대한 얘기였고요
앞으로 비디오를 짧게 만들기로 했으니까
여기서도 짧게 끊을게요
예 포프였습니다