DDR爱好者之家 Design By 杰米

基本了解

git命令是一些命令行工具的集合,它可以用来跟踪,记录文件的变动。比如你可以进行保存,比对,分析,合并等等。这个过程被称之为版本控制。已经有一系列的版本控制系统,比如SVN, Mercurial, Perforce, CVS, Bitkeepe等等。

Git是分布式的,这意味着它并不依赖于中心服务器,任何一台机器都可以有一个本地版本的控制系统,我们称之为仓库。如果是多人协作的话,你需要还需要一个线上仓库,用来同步信息。这就是GitHub, BitBucket的工作。

自己用Git有一段时间了,随着项目越来越多,功能分支也随之增加,从简单的基础命令到随心所欲,需要自己不断地去尝试总结,下面来分享一下我的Git使用总结。

本章基础篇主要讲解一些Git代码提交流程和Git基础命令的使用。

一、Git版本分支管理

以下是一个比较基本的分支管理示范,每个公司的项目管理运作不同,分支管理也有各自的特色,但万变不离其宗。

1) dev分支用于日常开发

2) 当有新版本需要发布时,把dev代码合并到release分支做集成测试,并等待发布

3) release分支进入bug修复阶段

4) 如果在release分支发现bug,那么在release分支进行修改,并使用git cherry-pick把修复bug的commit合并到release分支上

(cherry-pick与merge不同,它的合并是以commit为单位而非整个branch)

完成后,release分支上所有代码改动(除版本号之外)都应该已经合到了dev分支上

5) release分支测试完成后,发布到线上环境

6) 并且打上tag,合并到master分支上

7) 如果在线上出现bug,那么在master上hot fix修复

8) 出现hot fix并修复后,需要重新把hot fix的代码合并到dev以及release分支中去使代码保持一致

Git代码提交流程及git命令汇总(基础篇)二、Git基本命令汇

 二、Git基本命令汇总

1.查看本地文件状态

git status  —-查看本地、本地仓库、缓存(stash)的文件修改状态

—红色 代表本地工作空间的文件修改

—蓝色 代表提交到本地仓库中的文件(git add .)

2.切换版本/覆盖当前修改文件

git branch - 查看当前版本

git branch -a 查看所有版本

git checkout XXX(版本名)  —-切换到远程库中XXX版本

git checkout filepath    —覆盖当前修改的文件

git checkout .           -覆盖当前所有修改文件

3.从远程库获取最新代码

git remote -查看远程库名称

git remote -v  

git remote show XXX(远程库名)

git fetch — 从remote端拉取最新代码

git pull XXX(远程库名) XXX(分支名)  -把拉取的最新代码跟当前工作空间合并

git rebase —把远程拉回的代码和本地合并

4.缓存本地代码

当要切换到其它版本时,想保存在当前版本修改的文件:在切换前做

git stash   —-把本地修改过不需要提交的文件放入缓存

git checkout XXX(版本)   —切换库版本

切回原来的库,把文件从stash缓存中拿出来

git stash pop — 从缓存中拉出

5.提交远程库

git add .

git commit -m ''

git remote 查看远程关联名称

git push remote的名称 本地master

6.处理冲突

git fetch 拉取最新工程

git pull XXX(远程库名) XXX(分支名)  -把拉取的最新代码跟当前工作空间合并

冲突产生后,去工作空间修改后,>新代码===老代码<<<,保留最终代码,删除提示符,重新提交。

7.把本次提交的内容提交到其他分支(比如发布时bug的修改)

git cherry-pick commitId

8.建议执行顺序

git status 查看修改状态

git checkout filename 放弃某文件的修改。

git stash 储存修改

git fetch 拉取最新工程

git rebase 与本地分支合并

git stash pop 弹出储存文件,此时新文件可能会与你的文件产生冲突,解决冲突。

git add filename 添加某个修改文件

git add . 提交所有加点

git reset HEAD filename 回滚指定文件,回滚所有加点:"git reset HEAD . "

git commit -m''

git push 本地remote远程分支名,本地分支名

例我的本地分支为master 远程remote 别名为 origin 则提交为git push origin master

9.切换HEAD

git reflog --查看HEAD记录

git reset --hard HEAD^       //切换到之前一个HEAD 

git reset --hard fad4462      // 切换到某个已经回退的HEAD

10.刪除 local branch

git branch -d <branch_name>

总结

以上所述是小编给大家介绍的Git代码提交流程及git命令汇总(基础篇),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。