基本了解
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基本命令汇总
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命令汇总(基础篇),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
git,命令
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
- 雨林唱片《赏》新曲+精选集SACD版[ISO][2.3G]
- 罗大佑与OK男女合唱团.1995-再会吧!素兰【音乐工厂】【WAV+CUE】
- 草蜢.1993-宝贝对不起(国)【宝丽金】【WAV+CUE】
- 杨培安.2009-抒·情(EP)【擎天娱乐】【WAV+CUE】
- 周慧敏《EndlessDream》[WAV+CUE]
- 彭芳《纯色角3》2007[WAV+CUE]
- 江志丰2008-今生为你[豪记][WAV+CUE]
- 罗大佑1994《恋曲2000》音乐工厂[WAV+CUE][1G]
- 群星《一首歌一个故事》赵英俊某些作品重唱企划[FLAC分轨][1G]
- 群星《网易云英文歌曲播放量TOP100》[MP3][1G]
- 方大同.2024-梦想家TheDreamer【赋音乐】【FLAC分轨】
- 李慧珍.2007-爱死了【华谊兄弟】【WAV+CUE】
- 王大文.2019-国际太空站【环球】【FLAC分轨】
- 群星《2022超好听的十倍音质网络歌曲(163)》U盘音乐[WAV分轨][1.1G]
- 童丽《啼笑姻缘》头版限量编号24K金碟[低速原抓WAV+CUE][1.1G]