Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
‫گیت‬ ‫ورژن‬ ‫کنترل‬ ‫سامانه‬
‫شریف‬ ‫صنعتی‬ ‫دانشگاه‬ – ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
– ‫صدرنژاد‬ ‫سیدمحمد...
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
2
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
‫مطال...
3
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
What ...
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
4
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
‫گذار...
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
5
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
‫کنیم...
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
6
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
‫ورژن...
7
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Cente...
8
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Cente...
9
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Cente...
10
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Dist...
11
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Dist...
12
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Dist...
13
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Avai...
14
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Onli...
15
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
How ...
16
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
How ...
17
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
How ...
18
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
How ...
19
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
How ...
20
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
How ...
21
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
How ...
22
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
How ...
23
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
How ...
24
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
What...
25
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Desi...
26
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
What...
27
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
What...
28
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
What...
29
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Thre...
30
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Inst...
31
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Bran...
32
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Bran...
33
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Bran...
34
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Bran...
35
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Bran...
36
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Bran...
37
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Bran...
38
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Bran...
39
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Bran...
40
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Merg...
41
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Merg...
42
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Merg...
43
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Merg...
44
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Merg...
45
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Merg...
46
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Merg...
47
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Bran...
48
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Bran...
49
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Bran...
50
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Bran...
51
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Dele...
52
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Dele...
53
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Remo...
54
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Dele...
55
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Dele...
56
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Bran...
57
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Bran...
58
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Bran...
59
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Bran...
60
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Bran...
61
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Reba...
62
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Reba...
63
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Merg...
64
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Merg...
65
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Reba...
66
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
Work...
Initiate Git and It's Files
Working With Changes
# make a new directory and go to project path
> mkdir git_repo
> cd git_repo
# initialize git
> git init
Initialized empty...
# define your name and email address (this config is per machine)
> git config --global user.name "Masoud Sadrnezhaad"
> g...
# create and open README.md file with your default system editor.
> vi README.md
# let's write a readme file (with or wito...
# level up this file to staged level
> git add README.md
# look at git status. you see changes in staged level.
> git stat...
# let's take a look at created commits.
> git log
commit 021bd57955b472d8e6979ba71e4907e9f1e3ab8b
Author: Masoud Sadrnezha...
Undoing Things
# adding new modification to previous commits.
> git commit --amend
# you see commit message as it's name in first line.
#...
# do some modification and stage them.
# now imagine that you want to unstage one of added files.
# to undo "git add"
> gi...
Branching
# see list of all availeble branches.
> git branch
* master
# asterix indicates that HEAD is pointing to master branch.
# ...
# do some modification and commit them.
> git commit -am "message"
[master 79635ac] message
1 file changed, 1 insertion(+)...
# to merge branch dev switch to branch you are going to merge with
> git checkout master
# now merge dev. this remove dev ...
Remotes
# use .gitignore to indicate which files are not going to pushed
# into remote repository. you can put it everywhere in yo...
# to push commits
> git push -u origin master
# typing "-u origin master" is only needed at first time.
# to get commits p...
Rebase
# rebasing branches is not a good idea
> git branch
> gitx
> git rebase master
‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬
۱۳۹۵/۲/۱
67
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬
‫منا...
‫پاسخ‬ ‫و‬ ‫پرسش‬‫پاسخ‬ ‫و‬ ‫پرسش‬
‫وسیله‬ ‫به‬ ‫شده‬ ‫طراحی‬
sadrnezhaad.ir/smmsadrnezhaad.ir/smm
‫صدرنژاد‬ ‫سیدمحمدمسعود‬
Upcoming SlideShare
Loading in …5
×

Git Version Control System

706 views

Published on

در این ارائه ابتدا به معرفی سامانه‌های کنترل ورژن پرداخته شد و پس از توضیح مفاهیم کنترل ورژن به آموزش شیوه استفاده از گیت پرداخته شده است. فیلم این کارگاه در سایت جشنواره روز آزادی نرم‌افزار سال ۹۴ در تهران به نشانی sfd.fsug.ir/1394 قرار گرفته است.

Published in: Software
  • Be the first to comment

  • Be the first to like this

Git Version Control System

  1. 1. ‫گیت‬ ‫ورژن‬ ‫کنترل‬ ‫سامانه‬ ‫شریف‬ ‫صنعتی‬ ‫دانشگاه‬ – ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ – ‫صدرنژاد‬ ‫سیدمحمدمسعود‬۱‫اردیبهشت‬۱۳۹۵
  2. 2. ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ 2 ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ ‫مطالب‬ ‫فهرست‬ ۱‫آن‬ ‫انواع‬ ‫و‬ ‫کنترل‬‫ورژن‬ ‫از‬ ‫استفاده‬ ‫دلیل‬ . ۲.‫کنترل‬‫ورژن‬ ‫کردن‬ ‫کار‬‫نحوه‬ ۳.Stage‫و‬Branch‫و‬Merge‫و‬Rebase ۴‫کنترل‬‫ورژن‬ ‫از‬ ‫استفاده‬ ‫کارگاهی‬‫آموزش‬ .
  3. 3. 3 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ What is version control? ...a system that lets you track changes in your source code by “checking in” your code into the system.
  4. 4. ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ 4 ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ ‫گذارد‬‫می‬ ‫اختیار‬ ‫در‬ ‫کنترل‬ ‫ورژن‬ ‫که‬ ‫امکاناتی‬ ‫زمان‬ ‫طول‬ ‫در‬ ‫تغییرات‬ ‫ثبت‬ ‫اجرا‬ ‫حال‬ ‫در‬ ‫برنامه‬ ‫روی‬ ‫گذاشتن‬‫تأثیر‬ ‫بدون‬ ‫آزمایش‬ ‫انجام‬ ‫گروهی‬ ‫صورت‬ ‫به‬ ‫ها‬‫پروژه‬ ‫انجام‬ ‫و‬ ‫مدیریت‬ ‫امکان‬ (... ‫و‬ ‫برنچ‬ ،‫)کامنت‬ ‫کد‬ ‫سورس‬ ‫با‬ ‫ارتباط‬ ‫در‬ ‫دیگر‬ ‫کارهای‬‫و‬
  5. 5. ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ 5 ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ ‫کنیم‬ ‫استفاده‬ ‫کنترل‬ ‫ورژن‬ ‫از‬ ‫باید‬ ‫چرا‬ ‫تغییرات‬ ‫کردن‬ ‫دنبال‬ ‫و‬ ‫سابقه‬ ‫داری‬‫نگه‬ ‫اجرا‬ ‫قابل‬ ‫و‬ ‫پایدار‬ ‫کد‬ ‫به‬ ‫سریع‬ ‫بازگشت‬ ‫تر‬‫آسان‬ ‫مشارکت‬ ‫آسانتر‬ ‫های‬‫آپ‬‫بک‬ Sandboxing
  6. 6. ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ 6 ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ ‫ورژن‬ ‫کنترل‬ ‫های‬‫سامانه‬ ‫انواع‬ ) ‫متمرکز‬Centeralized( ) ‫شده‬ ‫توزیع‬Distributed(
  7. 7. 7 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Centeralized
  8. 8. 8 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Centeralized
  9. 9. 9 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Centeralized
  10. 10. 10 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Distributed
  11. 11. 11 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Distributed
  12. 12. 12 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Distributed
  13. 13. 13 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Available Version Control Systems Centralized VCS CVS Subversion (SVN) Team Foundation Server (TFS) Distributed VCS Git Mercurial (hg) Bazaar
  14. 14. 14 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Online VCS Hosting Github Bitbucket Gitlab Codeplex
  15. 15. 15 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ How They Work
  16. 16. 16 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ How They Work
  17. 17. 17 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ How They Work
  18. 18. 18 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ How They Work
  19. 19. 19 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ How They Work
  20. 20. 20 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ How They Work
  21. 21. 21 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ How They Work
  22. 22. 22 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ How They Work
  23. 23. 23 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ How They Work
  24. 24. 24 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ What is Git ...a distributed version control system created by Linus Torvalds, creator of Linux to replace BitKeeper as the VCS used for maintaining the Linux kernel.
  25. 25. 25 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Design Goals for Git Speed Simplicity Strong support for non-linear development Ability to handle large projects
  26. 26. 26 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ What Makes Git Different? Snapshots, Not Differences
  27. 27. 27 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ What Makes Git Different?
  28. 28. 28 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ What Makes Git Different? It's All (Mostly) Local
  29. 29. 29 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Three Main Stages Commited Staged Modifed
  30. 30. 30 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Installing Git http://git-scm.com/book/en/Getting-Started-Installing-Git
  31. 31. 31 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Branches Git commits are pointers to the previous commit
  32. 32. 32 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Branches
  33. 33. 33 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Branches
  34. 34. 34 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Branches
  35. 35. 35 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Branches
  36. 36. 36 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Branches
  37. 37. 37 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Branches
  38. 38. 38 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Branches
  39. 39. 39 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Branches
  40. 40. 40 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Merging
  41. 41. 41 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Merging
  42. 42. 42 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Merging
  43. 43. 43 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Merging
  44. 44. 44 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Merging
  45. 45. 45 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Merging
  46. 46. 46 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Merging
  47. 47. 47 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Branches
  48. 48. 48 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Branches
  49. 49. 49 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Branches
  50. 50. 50 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Branches Long Running Branches Stick Around Topic Branches Center Around Features, Bug Fixes, Etc Merged Back Into a Long Running Branch Topic Branches Are Usually Deleted When You're Done With Them
  51. 51. 51 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Deleting a Branch git branch ­D BRANCHNAME
  52. 52. 52 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Deleting a Branch git branch ­D testing
  53. 53. 53 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Remote Branches git push REMOTE BRANCHNAME
  54. 54. 54 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Deleting Remote Branches git push REMOTE :BRANCHNAME
  55. 55. 55 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Deleting Remote Branches git push origin :testing
  56. 56. 56 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Branches (Review)
  57. 57. 57 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Branches (Review)
  58. 58. 58 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Branches (Review)
  59. 59. 59 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Branches (Review)
  60. 60. 60 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Branches (Review)
  61. 61. 61 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Rebase
  62. 62. 62 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Rebase
  63. 63. 63 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Merged Without Rebase
  64. 64. 64 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Merged With Rebase
  65. 65. 65 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Rebase Never Rebase a Public Branch!
  66. 66. 66 ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ Workshop Let's See in Action Open Your Terminal
  67. 67. Initiate Git and It's Files Working With Changes
  68. 68. # make a new directory and go to project path > mkdir git_repo > cd git_repo # initialize git > git init Initialized empty Git repository in /path/to/git/repository/.git/ > ls -a . .. .git # let's have a deeper look at .git directory > ls -a .git/ . .. branches config description HEAD hooks info objects refs
  69. 69. # define your name and email address (this config is per machine) > git config --global user.name "Masoud Sadrnezhaad" > git config --global user.email smmsadrnezh@gmail.com # checkout your git config > git config --list user.name=Masoud Sadrnezhaad user.email=smmsadrnezh@gmail.com credential.helper=cache core.repositoryformatversion=0 core.filemode=true core.bare=false core.logallrefupdates=true
  70. 70. # create and open README.md file with your default system editor. > vi README.md # let's write a readme file (with or witout markdown syntax) # go to insert mode by click "I" one time # and go back to command mode by Esc. save the file by "wq" # make sure everything ok. > ls -a . .. .git README.md # check modification and it's level (slide 62) you see modifications a > git status nothing added to commit but untracked files present (use "git add" to
  71. 71. # level up this file to staged level > git add README.md # look at git status. you see changes in staged level. > git status # add staged changes to new commit. # write a meaningful message for your commit. > git commit -m "added readme file" [master (root-commit) 021bd57] commit message 0 files changed create mode 100644 README # look at git status. there is nothing to commit because changes # are commited. > git status
  72. 72. # let's take a look at created commits. > git log commit 021bd57955b472d8e6979ba71e4907e9f1e3ab8b Author: Masoud Sadrnezhaad <smmsadrnezh@gmail.com> Date: Fri May 1 02:12:46 2015 +0430 commti message # final notes: # it's easier to add and commit at once. > git commit -am "commit message" # this command add All files in your project directory > git add -A
  73. 73. Undoing Things
  74. 74. # adding new modification to previous commits. > git commit --amend # you see commit message as it's name in first line. # uncomment changes you want to ammend to that commit # then save the file and close the editor. # you see this modification in your last commit > git log
  75. 75. # do some modification and stage them. # now imagine that you want to unstage one of added files. # to undo "git add" > git reset HEAD README.md # undo to last working version of that specific file. > git checkout -- README.md # undo to last working commit. # actually this one reset everything not only one file. > git reset --hard HEAD is now at 11d075a commit message
  76. 76. Branching
  77. 77. # see list of all availeble branches. > git branch * master # asterix indicates that HEAD is pointing to master branch. # let's create a new branch and name it dev > git branch dev # HEAD is pointing to last commit of master branch likewise before. > git branch dev * master # change HEAD pointer to dev branch. > git checkout dev Switched to branch 'dev'
  78. 78. # do some modification and commit them. > git commit -am "message" [master 79635ac] message 1 file changed, 1 insertion(+) # switch back to master branch. > git checkout dev Switched to branch 'dev' # open recent changed files. changes does not apply becuz # you are working on master branch and commited to dev branch. # it's possible to create and switch to new branch at once. > git checkout -b dev master # master indicates that new branch is started from master. # -b used to create it.
  79. 79. # to merge branch dev switch to branch you are going to merge with > git checkout master # now merge dev. this remove dev branch automatically # but it keeps revision history (changelog) > git merge dev
  80. 80. Remotes
  81. 81. # use .gitignore to indicate which files are not going to pushed # into remote repository. you can put it everywhere in your project # we use ! to exclude some files and dirs and * for all of them. # use this command when you want to have a local copy # from remote repository. --bare is used > git clone --bare ~/git-repo/ # to clone from github > git clone git@github.com:smmsadrnezh/repo-name.git # to see centeral repository url you fetch from or push into > git remote -v origin https://github.com/smmsadrnezh/repo-name.git (fetch) origin https://github.com/smmsadrnezh/repo-name.git (push)
  82. 82. # to push commits > git push -u origin master # typing "-u origin master" is only needed at first time. # to get commits pushed by other collaborators. # pull is equivalent to run fetch and merge one by one. > git pull # fetch get's commits but do'nt merge it. # use diff command to see differences. > git fetch origin > git diff origin/master # important note: pull everytime you want to push # merge conflicts when using three way merge
  83. 83. Rebase
  84. 84. # rebasing branches is not a good idea > git branch > gitx > git rebase master
  85. 85. ‫جاوا‬ ‫زبان‬ ‫به‬ ‫پیشرفته‬ ‫نویسی‬‫برنامه‬ ۱۳۹۵/۲/۱ 67 ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫گیت‬‫ورژن‬ ‫کنترل‬‫سامانه‬ ‫کارگاه‬ ‫منابع‬ ‫از‬ ‫تصاویر‬Michael Koby https://mkoby.com
  86. 86. ‫پاسخ‬ ‫و‬ ‫پرسش‬‫پاسخ‬ ‫و‬ ‫پرسش‬ ‫وسیله‬ ‫به‬ ‫شده‬ ‫طراحی‬ sadrnezhaad.ir/smmsadrnezhaad.ir/smm ‫صدرنژاد‬ ‫سیدمحمدمسعود‬

×