g i t @ g i t h u b . c o m : G D G - X i a n / l e a r n - g i t . g i t C l o n i n g i n t o ' l e a r n - g i t ' . . . w a r n i n g : Y o u a p p e a r t o h a v e c l o n e d a n e m p t y r e p o s i t o r y . C h e c k i n g c o n n e c t i v i t y . . . d o n e . 7 / 30
s O n b r a n c h m a s t e r I n i t i a l c o m m i t U n t r a c k e d f i l e s : ( u s e " g i t a d d < f i l e > . . . " t o i n c l u d e i n w h a t w i l l b e c o m m i t t e d ) R E A D M E . m d n o t h i n g a d d e d t o c o m m i t b u t u n t r a c k e d f i l e s p r e s e n t ( u s e " g i t a d d " t o t r a c k ) 9 / 30
s O n b r a n c h m a s t e r I n i t i a l c o m m i t C h a n g e s t o b e c o m m i t t e d : ( u s e " g i t r m - - c a c h e d < f i l e > . . . " t o u n s t a g e ) n e w f i l e : R E A D M E . m d 11 / 30
t - m " 我添加了一个文件" [ m a s t e r ( r o o t - c o m m i t ) 7 6 3 8 8 c 8 ] 我添加了一个文件 1 f i l e c h a n g e d , 1 i n s e r t i o n ( + ) c r e a t e m o d e 1 0 0 6 4 4 R E A D M E . m d 12 / 30
r i g i n m a s t e r C o u n t i n g o b j e c t s : 3 , d o n e . W r i t i n g o b j e c t s : 1 0 0 % ( 3 / 3 ) , 2 6 7 b y t e s | 0 b y t e s / s , d o n e . T o t a l 3 ( d e l t a 0 ) , r e u s e d 0 ( d e l t a 0 ) T o g i t @ g i t h u b . c o m : G D G - X i a n / l e a r n - g i t . g i t * [ n e w b r a n c h ] m a s t e r - > m a s t e r 13 / 30
r i g i n m a s t e r r e m o t e : C o u n t i n g o b j e c t s : 3 , d o n e . r e m o t e : C o m p r e s s i n g o b j e c t s : 1 0 0 % ( 2 / 2 ) , d o n e . r e m o t e : T o t a l 3 ( d e l t a 0 ) , r e u s e d 3 ( d e l t a 0 ) , p a c k - r e u s e d 0 U n p a c k i n g o b j e c t s : 1 0 0 % ( 3 / 3 ) , d o n e . F r o m g i t h u b . c o m : G D G - X i a n / l e a r n - g i t * b r a n c h m a s t e r - > F E T C H _ H E A D 7 6 3 8 8 c 8 . . 3 f 5 c d 7 8 m a s t e r - > o r i g i n / m a s t e r U p d a t i n g 7 6 3 8 8 c 8 . . 3 f 5 c d 7 8 F a s t - f o r w a r d R E A D M E . m d | 2 + + 1 f i l e c h a n g e d , 2 i n s e r t i o n s ( + ) 14 / 30
E A D ~ 1 d i f f - - g i t a / R E A D M E . m d b / R E A D M E . m d i n d e x 8 9 4 7 5 f c . . f 9 8 4 c e 2 1 0 0 6 4 4 - - - a / R E A D M E . m d + + + b / R E A D M E . m d @ @ - 1 + 1 , 3 @ @ # 教大家学习G T I + + 我又添加了一行, 哈哈哈哈 [NOTE] '+' 为增加的代码, '-' 为删除的代码 15 / 30
h # 查看本地分支 * m a s t e r $ g i t b r a n c h - r # 查看远端分支 o r i g i n / m a s t e r $ g i t b r a n c h t e s t # 创建分支 $ g i t b r a n c h * m a s t e r t e s t $ g i t c h e c k o u t t e s t # 切换到分支 S w i t c h e d t o b r a n c h ' t e s t ' $ g i t b r a n c h m a s t e r * t e s t $ g i t s t a t u s # g i t s t a t u s 是我们的好朋友, 我们会多次用到它 O n b r a n c h t e s t n o t h i n g t o c o m m i t , w o r k i n g d i r e c t o r y c l e a n 18 / 30
o u t - b t e s t 2 # 更高级的做法, 创建分支并切换到这个分支 S w i t c h e d t o a n e w b r a n c h ' t e s t 2 ' $ g i t s t a t u s O n b r a n c h t e s t 2 n o t h i n g t o c o m m i t , w o r k i n g d i r e c t o r y c l e a n 19 / 30
i l e 1 $ g i t a d d f i l e 1 $ g i t c o m m i t - m " 添加了一个文件" [ t e s t 2 9 3 0 c 3 3 a ] 添加了一个文件 1 f i l e c h a n g e d , 1 i n s e r t i o n ( + ) c r e a t e m o d e 1 0 0 6 4 4 f i l e 1 $ l s R E A D M E . m d f i l e 1 21 / 30
o u t m a s t e r S w i t c h e d t o b r a n c h ' m a s t e r ' Y o u r b r a n c h i s u p - t o - d a t e w i t h ' o r i g i n / m a s t e r ' . $ l s R E A D M E . m d $ g i t m e r g e t e s t 2 U p d a t i n g 3 f 5 c d 7 8 . . 9 3 0 c 3 3 a F a s t - f o r w a r d f i l e 1 | 1 + 1 f i l e c h a n g e d , 1 i n s e r t i o n ( + ) c r e a t e m o d e 1 0 0 6 4 4 f i l e 1 $ l s R E A D M E . m d f i l e 1 22 / 30
i t l o g 是我们的另一个好朋友 c o m m i t 9 3 0 c 3 3 a b e 6 d 0 8 c c b 5 b 4 0 0 1 0 1 0 3 e 3 7 0 b 6 b 4 b 0 e e 1 7 A u t h o r : D a v i d X i e < d a v i d . s c r i p t f a n @ g m a i l . c o m > D a t e : S a t A p r 1 6 2 1 : 4 5 : 3 2 2 0 1 6 + 0 8 0 0 添加了一个文件 c o m m i t 3 f 5 c d 7 8 1 b 5 7 0 7 4 4 5 0 1 a 6 1 d c e 3 5 1 e 9 1 2 2 c 8 f 1 3 6 0 c A u t h o r : D a v i d X i e < d a v i d . s c r i p t f a n @ g m a i l . c o m > D a t e : S a t A p r 1 6 2 1 : 3 0 : 5 3 2 0 1 6 + 0 8 0 0 第二次提交 c o m m i t 7 6 3 8 8 c 8 4 8 c 5 8 7 7 2 6 2 6 a 2 d b 0 d 1 2 a e f 8 d b 3 a f 9 6 0 7 d A u t h o r : D a v i d X i e < d a v i d . s c r i p t f a n @ g m a i l . c o m > D a t e : S a t A p r 1 6 2 1 : 1 2 : 0 9 2 0 1 6 + 0 8 0 0 我添加了一个文件 23 / 30
G _ N A M E g i t p u s h o r i g i n t a g T A G _ N A M E $ g i t t a g v 1 . 0 $ g i t p u s h o r i g i n t a g v 1 . 0 C o u n t i n g o b j e c t s : 3 , d o n e . D e l t a c o m p r e s s i o n u s i n g u p t o 8 t h r e a d s . C o m p r e s s i n g o b j e c t s : 1 0 0 % ( 2 / 2 ) , d o n e . W r i t i n g o b j e c t s : 1 0 0 % ( 3 / 3 ) , 3 2 3 b y t e s | 0 b y t e s / s , d o n e . T o t a l 3 ( d e l t a 0 ) , r e u s e d 0 ( d e l t a 0 ) T o g i t @ g i t h u b . c o m : G D G - X i a n / l e a r n - g i t . g i t * [ n e w t a g ] v 1 . 0 - > v 1 . 0 24 / 30
t r e m o t e - v 查看设置的远端 g i t r e m o t e a d d N A M E U R L 添加新的仓库 g i t r e m o t e r e m o v e N A M E 删除仓库 $ g i t r e m o t e - v o r i g i n g i t @ g i t h u b . c o m : G D G - X i a n / l e a r n - g i t . g i t ( f e t c h ) o r i g i n g i t @ g i t h u b . c o m : G D G - X i a n / l e a r n - g i t . g i t ( p u s h ) 25 / 30
e a d d t e s t g i t @ g i t h u b . c o m : G D G - X i a n / l e a r n - g i t . g i t $ g i t r e m o t e - v o r i g i n g i t @ g i t h u b . c o m : G D G - X i a n / l e a r n - g i t . g i t ( f e t c h ) o r i g i n g i t @ g i t h u b . c o m : G D G - X i a n / l e a r n - g i t . g i t ( p u s h ) t e s t g i t @ g i t h u b . c o m : G D G - X i a n / l e a r n - g i t . g i t ( f e t c h ) t e s t g i t @ g i t h u b . c o m : G D G - X i a n / l e a r n - g i t . g i t ( p u s h ) $ g i t r e m o t e r e m o v e t e s t $ g i t r e m o t e - v o r i g i n g i t @ g i t h u b . c o m : G D G - X i a n / l e a r n - g i t . g i t ( f e t c h ) o r i g i n g i t @ g i t h u b . c o m : G D G - X i a n / l e a r n - g i t . g i t ( p u s h ) 26 / 30
- s o f t < c o m m i t h a s h > # 回退到某次提交, 但是不删除更改 g i t r e s e t - - h a r d < c o m m i t h a s h > # 回退到某次提交, 同时删除改动 g i t r e s e t - - s o f t H E A D ~ N # N 为要回退的版本数, 从当前提交开始数 27 / 30