|
|
1,从已有的分支创建新的分支(如从master分支),创建一个dev分支( N# {2 }/ d; ]
* |& G; F2 Y; j; v! R) I5 w( L2 N/ rgit checkout -b dev
$ l- R8 Z5 v+ x9 v2 M
; e8 B- [: Z& ]4 q( B8 W2,创建完可以查看一下,分支已经切换到dev/ x, o0 {/ o) U/ r+ o
' w2 r& W7 }" lgit branch
3 W2 f0 l; \- j: g ~; O% _) r$ E9 A& R& C, B
* dev5 s# x, N6 W2 Z/ Z) S5 a ^9 }4 t
. w3 I) _2 y* J$ f2 w$ D1 z# ? O9 @
master( F" p) b! @* U, I7 c" ]9 W8 V
, Y& ` X# p! X
3,提交该分支到远程仓库
2 ~# k* V) r8 y- A- A$ E+ d8 V' p9 }' ~+ g4 w; H7 J- q
git push origin dev6 a! N' ^/ m0 m, g K3 ~
! Y" M; [2 W" r+ j, F4,测试从远程获取dev
+ I6 {1 [, L0 D0 K
9 M" t7 L! A' m4 Fgit pull origin dev3 E% i2 h% D& T. ]- E. s
" w% P+ h: ~( L' d
5.删除分支本地分支
& J3 I! z) _) E; p, `, `* R- J$ git branch -d <BranchName>
" ~/ C1 a' _" ?" D( v% Q' z4 M) z4 F$ git branch -D <BranchName> 强制删除
0 T/ Q' N' W# N- I' F. }5 s- y6 A' h5 s K: o: O. r
6.删除远程本地分支4 r# W s' _. Q6 |6 c% n, z
$ git push origin --delete <BranchName>
5 T4 Z% }& `% Y! d. y) k; j& E) d3 L0 ^( V1 Q! g' `( ]% E
合并分支* r* z* f k% g, J% ~1 l8 s1 S T/ p
此时的步骤:check 1.2和1.02 l# u6 c2 K2 f# H) P& p% {/ I
git checkout v1.0 8 |0 m7 |, w" Y+ o) T3 n
git checkout v1.2% r1 _4 G3 r/ E" ?
9 L6 c' E r% U+ R
然后再v1.2的分支基础上执行merge
! w# Q; C) |8 X3 c- y8 Ngit merge v1.0
. U9 b# |5 g& c/ M% ?& s# b
) t4 Q1 t- H8 d0 u2 l: e2 I' q如果没有报错,那就直接提交代码git push origin v1.2, O" ?; i9 A$ b- O/ }
如果报错,就解决冲突
8 b* q$ k& v% Y& E% i
5 C0 t6 y; A3 \; O( G# ~然后添加,提交:) ~' k% D7 k6 S& P
2 v% Q5 ?: x3 pLV@LV-PC MINGW32 /c/gitskill (master|MERGING)
`1 X* l" q) q9 h9 P7 ?$ git add readme.txt
. |; P+ f3 m1 C( F2 E5 E# i8 g! G& f4 y
LV@LV-PC MINGW32 /c/gitskill (master|MERGING)# P; m, p- G) b
$ git commit -m "branch merge"
$ }& B9 a9 J. |3 l2 h) c[master f3d8f1e] branch merge
' S) J( p9 n( I. H2 T1 h2 y7 o5 a7 d1 k' W m' r9 \
: f, e. a/ j! c3 r$ f
, d+ O" l+ u( F1 x7 z6 Q9 _6 P! B# i: y. n6 w# u* S
8 Z: y3 \( i0 W' }3 }* k+ m' ^! B! s
git 设置不需要输入密码, 去除 fetch / pull 代码每次都需要输入密码的烦恼
7 B; h. d: P, { X7 H* ]1 xgit config --global credential.helper cache8 v: {4 j5 l2 K$ N& v
如果想自己设置时间,可以这样做:
2 n; g! a: G1 \' r( [ ~; Q5 }; | Z' l& ]. y) g! z
. Y: B& Q+ a+ Vgit config credential.helper 'cache --timeout=3600'+ Z! j3 i, \* j# u( @9 z7 z" C
这样就设置一个小时之后失效
% Y) E2 ?4 X# o: W b3 j' R, d8 _/ u3 ]. g
/ w- g: U- r) R' K/ Q8 q; S长期存储密码:
! }/ K8 S- g) o% }1 }1 f4 |2 e% Y, lgit config --global credential.helper store
4 E2 }4 R0 R b( `7 v/ w' [6 @- b2 Z" V& R" l2 E) \
然后git pull,输入账号密码,下次就不需要再次输入了7 s) w, O1 r; S1 @0 s7 i
: P- D t1 b; }# \ } j
& b. \) y2 U- _& z* \# C2 R8 Agitee推送到远程仓库时提示错误
: \! ^3 r* k- O( v s7 kremote: Incorrect username or password ( access token ): V& Q6 p; h& |# _; |
fatal: Authentication failed for 'https://gitee.com/***/***.git/'4 G4 q" M. J3 A: u5 C
8 E8 H) G7 P; i( v S' M* P+ y8 Y
解决办法:清除本地的gitee用户名和密码" N& K$ i+ ?' m
git config --system --unset credential.helper
5 S+ N- Y3 H& Z; p- J3 k
4 \$ [* ~( j; e! F M& f( [: S
" W2 U0 A0 C# Z |
|