|
|
1,从已有的分支创建新的分支(如从master分支),创建一个dev分支8 n( J4 _+ d9 r' u. O5 Y, h7 q2 f
% q Y6 I' A% w: i. p7 s- lgit checkout -b dev, F3 C" o6 N& B6 A& z( L2 G
! A0 Y% ~7 `; T. B G* W
2,创建完可以查看一下,分支已经切换到dev
. [+ z: w3 j( d1 n) [9 r) |+ ]; Q" H7 m. L" c8 L, b: o7 t- p+ c
git branch; R S% r! l- K7 @! f" N. g
$ k! W- C1 p- }# E ^ * dev
- b# q# Y0 l% g
" U9 K5 ?5 G; ^5 F4 _' `4 M master
& B9 f, P! Z3 w7 Y/ I# j8 N* V5 {& y% b9 s/ i% k6 B
3,提交该分支到远程仓库$ B% C2 h6 C) _9 B( H# h
0 D+ g/ B u; s* _1 C j: t1 }* j B
git push origin dev
# I4 Q5 m6 f4 f4 m4 @ F2 S* v% T1 m7 H8 j
4,测试从远程获取dev
0 W: n `' r( O1 l# u7 r6 T5 q/ }0 H9 K, L" c" C7 o4 T6 \
git pull origin dev
3 w" y! ?, v) Z6 a
, S% P; @, Y. |# h" A/ X5.删除分支本地分支2 D( U# ~& Q* p2 @0 U
$ git branch -d <BranchName>! U, ]$ [& d, M: u* R
$ git branch -D <BranchName> 强制删除 H( j9 p* ?' @' }; Y
) y, }" u6 I4 q/ N
6.删除远程本地分支
, ?7 h) }; l) {$ git push origin --delete <BranchName>
2 D3 l9 H+ ~) f+ Y9 W& B6 H+ p. ?3 p9 ?3 T
合并分支
5 k( U* f2 q6 Q此时的步骤:check 1.2和1.0
9 v4 N$ g! @7 _8 d( ^, ?$ g; Ngit checkout v1.0
+ w3 b# b/ F! i% d9 m8 f1 o% I: rgit checkout v1.2; A0 k; t& A) l2 F
* }8 o5 ~* q. m
然后再v1.2的分支基础上执行merge; [6 R& h7 c- Y/ r# [1 H/ ~5 W
git merge v1.0' I% h/ \* \$ e9 H2 x. u( ]* `2 n( Z4 o
- A4 N9 j$ d9 E: c如果没有报错,那就直接提交代码git push origin v1.2/ i& G; S7 K$ t0 E7 T& ]# s+ ~" @
如果报错,就解决冲突
7 r8 I( e; s6 [' M$ L. j/ c: z9 N8 K. Z* Q3 n1 k% E) @
然后添加,提交:/ J1 v+ u; A1 J* a& o8 ?, }
, J) V5 _6 Y/ ~0 }- C8 ILV@LV-PC MINGW32 /c/gitskill (master|MERGING)
! \; g$ M& [0 S4 P$ j9 j% G$ git add readme.txt
& I C s! J8 u$ z2 E/ ]" Z2 J1 u( J* H1 a2 V
LV@LV-PC MINGW32 /c/gitskill (master|MERGING)
0 N! Y; y! ?! J. l$ git commit -m "branch merge"7 _1 \; w, u \- n
[master f3d8f1e] branch merge; C, y% n- c/ ]: f ^& _! p
; W4 i, J& A8 M0 g/ F6 w
9 o/ O: r5 s' D" ^
0 v* @. w7 j% j$ u/ H; b: }5 F& l
/ Z2 n/ C7 ~4 I9 n/ ]- w
% {2 r- D8 n: Q; \( J. a
git 设置不需要输入密码, 去除 fetch / pull 代码每次都需要输入密码的烦恼) c2 ~* T: S$ k
git config --global credential.helper cache- D9 T) n' i. s' S ^
如果想自己设置时间,可以这样做: c$ b4 E8 G1 _, x7 }: y$ M7 H
+ f8 e* Z/ m* A. [5 z! o5 |
( h! r/ W/ U# Q# egit config credential.helper 'cache --timeout=3600', e- m/ n7 C7 L6 k) s9 W
这样就设置一个小时之后失效# N6 w- s$ P# y- G! O& @1 Z. e
; |9 P4 y2 d9 K
+ ~; D( Z" l* \长期存储密码:9 W2 Y. E I9 x4 g1 z$ V
git config --global credential.helper store* S" p0 ~9 r+ c
+ l P# j5 r% |
然后git pull,输入账号密码,下次就不需要再次输入了* @8 i0 C5 _( O* s% l9 H4 x
+ P. _& }1 O/ w) t
) f* R5 W8 ], c3 K8 [4 Wgitee推送到远程仓库时提示错误
" O9 F" `5 V- t2 U: Jremote: Incorrect username or password ( access token )
7 l0 V5 q/ w+ n+ U6 ]0 Tfatal: Authentication failed for 'https://gitee.com/***/***.git/'- \+ `' I) S2 i
( ^$ v4 _' N( A& C8 ?: q1 J
解决办法:清除本地的gitee用户名和密码
& t. O- l. a3 m$ Y- _3 o6 K8 ?- _5 B2 {git config --system --unset credential.helper
4 `8 s: ?+ [4 C7 X- g8 l% p! N% N1 {" |
7 |+ S3 K" o! F' f* X' x/ Y
|
|