|
|
1,从已有的分支创建新的分支(如从master分支),创建一个dev分支$ c( j8 q# R9 l$ X' G y; |) o
: W, L. s6 n) m5 J; e
git checkout -b dev# s' h/ d% z! w! ^* ~
; k6 Z9 b4 r; [- D3 m: x6 n7 P
2,创建完可以查看一下,分支已经切换到dev
8 i- k& H! `: H$ n+ k. \
' V6 v4 b# [2 U% s: c/ ygit branch1 p0 N8 r9 l5 ?( B, x* D6 I- Q* q3 a
2 P: U8 Z$ ~# n
* dev
8 [; ?: { D: K6 l$ U! d/ N
- X# Q. r d1 b. N master$ Y6 z; ~, i+ g% F' m% t
6 ~& \; i, {; M# p1 X% [0 [: r) n3,提交该分支到远程仓库/ X# @' L' Z0 c6 m2 z- x& L7 ?) I$ z* c
7 R! w+ ?; ^ Y$ L2 i9 H( l' _$ Ngit push origin dev
! G. g7 F2 w! g/ y
9 o( ~! v" C/ a3 s4,测试从远程获取dev5 H( S0 y. S! A3 E2 ^ T! H% b0 h0 w
" p2 Z9 ~( C7 v5 \
git pull origin dev
* R8 r+ }% |/ j2 B) P" G$ _) u
p( A5 D2 W0 B9 x! k5.删除分支本地分支
$ {$ K J1 f6 C$ git branch -d <BranchName>& _/ o m- P* Q, f8 G
$ git branch -D <BranchName> 强制删除
1 w2 x C$ f9 @4 _+ s% c7 _: E. i; ^4 A# h- X# u! D
6.删除远程本地分支$ ?2 x$ n0 F& [& h4 c6 c7 L, C: w
$ git push origin --delete <BranchName>
" y) P9 C0 P/ z& O9 p: M3 I
! H' x0 l5 K3 [4 E% M+ {/ n/ D合并分支
! M% b3 H: _! p# A/ Q" P此时的步骤:check 1.2和1.0
0 L& q" i( n: B5 q. Ygit checkout v1.0 # N" g# o) v( `- ]) Y' D/ g
git checkout v1.2
8 w+ `5 k# g( j" A4 B2 o1 u6 R- Y
, \6 I, [ c3 u: q7 g1 @- p然后再v1.2的分支基础上执行merge
# _, o' c/ u, K! L) v1 y: e$ Z! _4 ]6 tgit merge v1.0
* Q) L! P- ]9 _! _/ h9 k* {& R6 A- S3 G- p: h4 v$ F9 l. P5 L/ F
如果没有报错,那就直接提交代码git push origin v1.2
1 s# i4 Y9 n5 f: q" m如果报错,就解决冲突$ O, s: m2 @# g$ ]& o8 w! }" d
; h, ^& `) M$ R然后添加,提交:
, a# V$ _! k" u) E: Y# X) `
' A' q7 m/ r/ U! M0 rLV@LV-PC MINGW32 /c/gitskill (master|MERGING)8 C7 {0 e9 H" C5 B+ A8 f! q- P& {$ u
$ git add readme.txt
+ q4 F! {0 z: w% T& V1 F! m) P3 n6 j( S1 Y: M
LV@LV-PC MINGW32 /c/gitskill (master|MERGING)
/ |+ g9 Z. U! `8 U1 ~$ g$ git commit -m "branch merge"# y6 v3 x2 h5 \ r/ ?) X
[master f3d8f1e] branch merge
, [' s3 Y1 k/ g& i" R8 ^1 g- p
8 Z( i/ \: I" p3 C! }; _
' O! f+ K" [3 w# ~" E5 v% K7 I* o/ A# K) h" V$ R( [" G% t
# v; Z2 G, S( o5 g# B/ k2 u4 o
' Y: e+ Y6 h1 d5 Z1 [! Q" o8 h* tgit 设置不需要输入密码, 去除 fetch / pull 代码每次都需要输入密码的烦恼$ b& b6 Z% d3 g
git config --global credential.helper cache
0 ?, i6 l( d1 ]如果想自己设置时间,可以这样做:# R: y% W0 Y1 x
5 C9 P% p8 K# B# g i2 }4 {. j/ D% N* \% |) C
git config credential.helper 'cache --timeout=3600'3 T& \7 G+ ` P) e* {. s
这样就设置一个小时之后失效- N, g d! }2 Y" v/ Y
5 n7 ~( d5 K( \. X; F7 d+ z
* [; M" j9 y" |长期存储密码:
2 G; E7 I o6 ]: d5 d6 \$ fgit config --global credential.helper store
6 Z7 u9 _: B1 Y2 R U& z# o* G8 }* c$ ~
然后git pull,输入账号密码,下次就不需要再次输入了
) M! F1 a$ k. K% K7 W
, Z, M# J- e* |4 m$ G2 ~, _: n5 m8 D. o$ ?
gitee推送到远程仓库时提示错误
# F5 G s; Q s) M$ q" [+ a' Vremote: Incorrect username or password ( access token )
: U! Z8 H* i7 f4 G, ]0 Cfatal: Authentication failed for 'https://gitee.com/***/***.git/'/ U h7 p; E" G; L& b1 _# `
v3 H) v2 Z2 ?+ _7 `0 q; d5 Z
解决办法:清除本地的gitee用户名和密码! k3 T8 A/ c. V" k" O/ k
git config --system --unset credential.helper4 Q# y# @( e# N& N8 s& Y' w: l
9 M* A/ ] N+ O, l8 B
5 r, N! |) w( u U* N, q& l |
|