万码007
IP:上海
4关注数
26粉丝数
47获得的赞
上海联影
资深前端开发
中国科学技术大学
硕士
工作13年
编辑资料
链接我:

创作·171

全部
问答
动态
项目
学习
专栏
万码007

什么?你的年终总结PPT第一页还没写完??

什么?你的年终总结PPT第一页还没写完??
16
0
1
浏览量451
万码007

当拿到鸿蒙证书,心中满是喜悦与自豪。证书见证拼搏与钻研。 回想考证书的日子,在鸿蒙知识海洋遨游,从懵懂到掌握核心要点,充满挑战。曾为攻克难题,反复查阅资料,实验调试,寻觅钥匙。 此刻,艰辛化作欢喜。证书是对个人能力的认可,是入场券。意味着能在鸿蒙生态大展拳脚,有底气参与开发和推动技术进步。喜悦如星光,照亮前路,让人对创造精彩充满期待与激情。
9
0
7
浏览量830
万码007

程序员不上班还有哪些出路?(1024活动话题)

写代码控制挖掘机炒蛋炒饭
9
0
0
浏览量0
万码007

找对象和赚钱哪个更重要?(1024活动话题)

不冲突啊
6
0
0
浏览量0
万码007

上几年班,才能买得起所在城市的房子?(1024活动话题)

没个20年搞不定
7
0
0
浏览量0
万码007

程序员们现在手头都有多少存款?(1024活动话题)

我只能说工资卡不少
7
0
0
浏览量0
万码007

测试

前途无量
6
0
0
浏览量0
万码007

大厂员工月薪分布占比:90%的月薪在2-5万!你的呢?

5K排多少?
6
0
0
浏览量0
万码007

就业环境太差

有面试就已经很不错啦
13
0
0
浏览量0
万码007

OpenAI震撼发布o1大模型,具备奥数金牌水平,推理极限超博士,普通人还有出路吗?

OpenAI震撼发布o1大模型,具备奥数金牌水平,推理极限超博士,普通人还有出路吗?
0
0
0
浏览量139
万码007

35岁失业?65岁退休?中间30年何去何从?

35岁失业?65岁退休?中间30年何去何从?
0
0
0
浏览量166
万码007

阿里云发生机房火灾!云服务还靠谱吗??

"https://wmprod.oss-cn-shanghai.aliyuncs.com/community/Fg2rJa_dQ4qaiBvtZtCV9uxnMLDU.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/community/Fg2rJa_dQ4qaiBvtZtCV9uxnMLDU.png)
2
1
0
浏览量202
万码007

MoonBit,国产编程语言之光?

MoonBit作为一种新兴的编程语言,在国内外开发者社区中引起了广泛关注。特别是在日本,MoonBit因其对WebAssembly的优化和简洁的语法设计,受到了开发者的高度评价。例如,有开发者认为MoonBit提供了类似Rust的体验,同时支持GC,使得编程更加高效和安全。此外,MoonBit在编译速度、运行速度和代码体积方面表现出色,尤其是在WebAssembly平台上,其性能优势明显。 MoonBit的开发团队来自深圳,其背景包括在函数式编程语言和编译器开发方面的丰富经验。这使得MoonBit在设计之初就考虑到了与AI的协作,尤其是在云计算和边缘计算领域,MoonBit展现出了强大的潜力。 尽管MoonBit目前仍处于Beta阶段,但其已经在一些商业项目中得到了应用,显示出其在实际应用中的可行性和稳定性。随着MoonBit的不断发展和完善,预计它将在全球编程语言市场中占据一席之地,特别是在AI和WebAssembly相关的应用场景中。
2
0
1
浏览量0
万码007

WebSocket 和 HTTP的区别?

WebSocket 和 HTTP的区别?
0
0
0
浏览量186
万码007

上海字节跳动一道关于http缓存的面试题

我猜你说的 response 指的是 response body? 协商缓存如果命中返回的是 304 啊……只有 header 没有 body。 虽然还是请求了一次服务器,但只需要传输 header 部分就可以了,节省了传输文件本身的开销。
1
0
0
浏览量0
万码007

axios 配置 Authorization 后为什么会多一次返回 204 的请求

跟 axios 没关系,那个返回 204 的是 options 请求,跟 CORS 的跨域支持请求有关。(以下引用自:CSDN 博客 - 柳下听雨) 我们公司的项目都是前后端分离的,上线几个月以来,发现一个很奇怪的问题,每次前端发起请求,通过浏览器的开发者工具都能看到在Network下同一个url有两条请求,第一条请求的Method为OPTIONS,第二条请求的Method才是真正的GET或者POST,并且,第一条请求无数据返回,第二条请求才会返回正常的数据。发现这个问题之后,立即组织搜索问题产生的原因以及解决方案。在网上搜索了大量资料,得到的一个结论是:第一个OPTIONS的请求是由Web服务器处理跨域访问引发的。网上资料显示,OPTIONS是一种“预检请求”,浏览器在处理跨域访问的请求时如果判断请求为复杂请求,则会先向服务器发送一条预检请求,根据服务器返回的内容浏览器判断服务器是否允许该请求访问。如果web服务器采用cors的方式支持跨域访问,在处理复杂请求时这个预检请求是不可避免的。 查询代码发现,我们的web服务器确实采用的是cors来解决跨域访问的问题,并且我们在header中添加了自定义参数,导致我们的每次请求都为复杂请求,从而产生了每次请求都会发送两条请求的现象。 问题的原因找到了,就要想办法解决这个问题。既然浏览器在处理复杂请求时,不可避免的要发送预检请求,那么能否减少预检请求的次数呢?比如,预检一次设置一个有效期,在有效期内不再重复预检。顺着这个思路,继续搜索相关资料,最终发现设置Access-Control-Max-Age这个参数即可达到预期目标。该参数用来指定本次预检请求的有效期,单位为秒。在服务器上设置该参数之后,问题解决了,大快人心!!! 参考资料:http://blog.csdn.net/charlesl...
1
0
0
浏览量0
万码007

为什么在HTTP头里要设置同时设置Expires和Cache-control:max-age

因为 Expires 是 HTTP 1.0 定义的字段,而 Cache-Control 是 HTTP 1.1 的字段,万一客户端只支持 HTTP 1.0,那么 Cache-Control 有可能就会不工作,所以一般为了兼容会都写上。
1
0
0
浏览量0
万码007

http中请求头和响应头的作用

POST /otn/login/loginAysnSuggest HTTP/1.1 Host: kyfw.12306.cn Connection: keep-alive Content-Length: 203 Accept: */* Origin: https://kyfw.12306.cn X-Requested-With: XMLHttpRequest User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36 Content-Type: application/x-www-form-urlencoded; charset=UTF-8 Referer: https://kyfw.12306.cn/otn/login/init Accept-Encoding: gzip, deflate Accept-Language: zh-CN,zh;q=0.8,en;q=0.6 Cookie: JSESSIONID=059319E9BB0614197D515D6A0213EC58; _jc_save_fromStation=%u6DF1%u5733%2CSZQ; _jc_save_toStation=%u5409%u5B89%2CVAG; _jc_save_fromDate=2015-02-13; _jc_save_toDate=2014-12-16; _jc_save_wfdc_flag=dc; BIGipServerotn=854589962.50210.0000; _jc_save_detail=true; current_captcha_type=C 上面的是请求头, 下面的是相应头 HTTP/1.1 200 OK Date: Mon, 29 Dec 2014 02:48:04 GMT Server: Apache-Coyote/1.1 X-Powered-By: Servlet 2.5; JBoss-5.0/JBossWeb-2.1 ct: c2_50 Content-Type: application/json;charset=UTF-8 Content-Length: 164 X-Via: 1.1 zhj168:5 (Cdn Cache Server V2.0) Connection: keep-alive 请求头描述了客户端向服务器发送请求时使用的http协议类型,所使用的编码,以及发送内容的长度,refer,等等。refer干嘛的,一般用来做简单的防跨站攻击。 相应的响应头用来描述服务器回给你对所返回的content的一些一些描述,我是什么服务器,我返回的是啥编码,我返回的内容有多长等等。
1
0
0
浏览量0
万码007

做登录验证现在用的是cookie里得token,想直接用token可以直接取到值吗?

建议你看一下 https://www.npmjs.com/package... 这个包取值很简单: import cookie from 'js-cookie';let token = cookie.get('key');
1
0
0
浏览量0
万码007

绝对定位怎么解决宽度溢出?

在position:absolute时,width的百分比值是相对于包含块的padding-edge来算的。这意味着它会相对于包含块的width+padding做百分比计算。这不是宽度溢出,这是标准。 针对你想要的效果,你想要的是普通流自适应于包含块content-edge的效果,就这样做:http://jsfiddle.net/humphry/n2wVT/
1
0
0
浏览量0
万码007

http下是否有加密登陆密码的必要

有。技术是个有梯度的东西。一个浅显的base64编码尚且已经够挡住很多菜鸟了,客户端单向加密一下虽然不能抵抗重放攻击,但至少这也能防住用户的所有密码在你的网站单点暴死——毕竟多数人是多个网站同一密码的。题外话:http就是不安全的代名词。密码重放攻击也许还可以通过实现握手协议来解决,但cookie伪造攻击却几乎无解。请开发者在有必要时务必尽可能采用https,请上网用户切记再懒也要给http网站和https的网站采用两套不同的密码。
1
0
0
浏览量0
万码007

问大家一道我儿子一年级的数学题:求图形里包含多少个矩形

1 写程序暴力穷举是能实现的证明如下:1.1 已知每个点的坐标哪两个点之间有连线为什么条件2也是必须的,如图,A和D之间有没有连线,H和K之间有没有连线,必须题目给出。1.2 计算穷举所有的线段。题目给的可能是CF,FD两个线段,实际CD也是一个线段。题目给的3个小线段连成一个大线段也是有的:AMEB穷举哪4条线段构成一个4边形,判断4个线段是否有且仅有4个公共点即可判断上述4边形是否构成矩形,判断4个顶点的横坐标和纵坐标的相等关系即可如图:横坐标相等:A和C,B和D纵坐标相等:A和B,C和D则ABCD必为矩形2 小学一年级的暴力破解法就是硬数。但要有条理。1个矩形组成的矩形:5个2个矩形合并成的矩形:4个3个矩形合并成的矩形:2个4个矩形合并成的矩形:0个5个矩形合并成的矩形:1个总计:12个但这个方法只能应对矩形数量少的图形,如果数量多一点,大学生也要数错,各位不信的话,数一下这个围棋棋盘,有多少个矩形(正方形也算矩形)3 小学三年级的速算法3.1 删除干扰线速算我把线段MN称作干扰线,忽略它,得到这个图:在水平方向,有3条线段,即:AE,EB,AB在竖直方向,有3条线段,即:AG,GC,AC则这些线段(以及和他们平行且相等的线段)可以组成3x3=9个矩形用这个方法,算一下围棋棋盘有多少矩形,是不是快多了?横向纵向各有18x19/2=171条线段,一共可以组成171x171=29241个矩形3.2 计算干扰线带来的矩形3个:AGMN,MNEK,MNBH再加上9共计9+3=12个4 别问我怎么知道的我是无证小学奥数讲师
0
0
0
浏览量0
万码007

网站静态化问题

我个人认为,网站静态化,并不一定非要靠写代码实现整站 HTML 的生成,有些工具能提供非常好的缓存机制。在 Web 开发中,最关键的瓶颈往往在于数据库,减少数据库的读写压力,就是缓存的主要作用。在可以提供缓存功能的工具中,应用层的可以用 Memcache 和 Redis,前端缓存可以用 Varnish 和 Nginx 的提供的缓存功能,当然还要合理利用 304 状态码。以 Memcache 和 Redis 为例,它们的作用是让你能够把数据库的数据保存在内存或者是磁盘文件上,这样每次请求过来你仍然可以通过程序来控制业务逻辑,但是极大地减少了数据库的访问,性能自然提升。而对于 Varnish 和 Nginx 这样具有反向代理功能的工具来说,它们的作用就是将第一次动态请求的页面缓存起来,在过期时间内,接下来的请求返回的都是缓存里的数据,不再向后端服务器发起请求。而对于你后面的问题,阅读次数,评论这些静态中常变的部分,使用不同工具的情况下也有不同的解决方法。文章的阅读次数 —— 使用应用层缓存的情况下,可以先把阅读次数写入到缓存中,在后台写个脚本定期从缓存中读出来写入到数据库里。使用前端缓存的情况,可以用 Ajax 异步调用把阅读次数写入到数据库中,如果写压力大的话,就像使用应用层缓存一样,先写入缓存,再写脚本定期读。评论 —— 同学你知道有两个东西叫 Disqus 和 多问 吗?如果你要手动管理评论的话,使用应用层缓存的情况下,就像平常一样读写即可,只需要做好缓存管理;如果用前端缓存的话,以 Varnish 为例,读的时候可以用 ESI Tag 这个特性,就像 Apache 的 SSI 一样,写评论的话,还是要用 Ajax 来异步写入,当然,你得在 Varnish 里设置不缓存 POST 提交。欢迎深入讨论。
0
0
0
浏览量0
万码007

利用什么技术可以快速的搭建个人blog?

这里写的很详细如何搭建一个独立博客——简明Github Pages与Hexo教程
0
0
0
浏览量0
万码007

如何在mpvue中使用小程序组件?

找到解决方案了:https://github.com/JJJYY/mpvu...
0
0
0
浏览量0
万码007

是不是直接调用wx.openLocation,不会弹出授权框啊,我试了三个手机都没弹,为啥官方文档里说需要授权呢

小程序前段时间好像更新了,现在调用类似的接口都需要先主动邀请用户授权,小程序不会主动拉起授权了现在,你先使用wx.getSetting,在成功的时候再调用openLocation试试在你的地图地图图标外面加一层button<button open-type="openSetting" bindtap="onGotSetting">打开授权设置页</button>然后在page里面写 onGotSetting:function(){ wx.getSetting({ success(res) { if (!res.authSetting['scope.userLocation']) { wx.authorize({ scope: 'scope.userLocation', success() { wx.getLocation({ type: 'gcj02', //返回可以用于wx.openLocation的经纬度 success: function(res) { //你的操作 }) } }) }) } } }) }
0
0
0
浏览量0
万码007

小程序跳转小程序提示 该功能无法使用 请返回使用该小程序其他功能

加上版本说明 version="release" 当target="miniProgram"时有效,要打开的小程序版本,有效值develop(开发版),trial(体验版),release(正式版),仅在当前小程序为开发版或体验版时此参数有效;如果当前小程序是正式版,则打开的小程序必定是正式版。 当你没有要跳转的小程序的体验权限时,开发版本测试version="trial" 的时候,会提示你无改小程序体验权限。上线使用 version="release" 即可
0
0
0
浏览量0
万码007

小程序开发遇到问题:如何把子组件的值传给父组件

Component Component({ properties: {},data: { info:'我是子组件的值' }, methods: { modalClear:function(){ let myEventDetail = this.data.info; this.triggerEvent('myevent',myEventDetail,{bubbles:false}); } } }) index.wxml //组件 <my-component modal-hidden="{{is_modal_Hidden}}" modal-msg="{{is_modal_msg}}" bind:myevent='onMyevent'></my-component> index.js onMyevent:function(e){ console.log(e.detail); }
0
0
0
浏览量0
万码007

小程序实时生成可分享卡片的方案。

文字换行解决方案: 使用WeZRender绘图,文字间加上"n"换行符,可以成功换行,根据这个,可以限制一行显示固定字数比如20个,在画文字前,先在该换行的位置出入"n"; 按照上面这个思路,直接canvas画图的话,也可将文字分多段画 其他的问题: 图片以圆形显示:暂不确定WeZRender可否用一个同样大小的圆来裁切图片,从而使得以圆形显示 卡片圆角:同上 canvas输出图片模糊:使得输出宽高为canvas宽高*设备像素比可解决,相关问题链接
0
0
0
浏览量0
万码007

this.setData()

show(data) { let self = this; console.log("show(data)") self.page.setData({ 'isHide': true, 'content': data }); setTimeout(function () { self.page.setData({ 'isHide': false }) }, 2000) }self就没事了
0
0
0
浏览量0
万码007

2024年了,大家用什么方式开发小程序?

你可以参考下这个小程序框架选型必看:Taro vs uni-app选型经历我自己的话一般还是用原生的多,如果你考虑多平台发布可以考虑一下框架
0
0
0
浏览量0
万码007

element-ui中tree组件折叠展开的原理

可以看一下这个回答http://blog.csdn.net/x_lord/a...
0
0
0
浏览量0
万码007

vue 如何做音乐播放器中的歌词滚动?

如果只是用来做练手的话,可以使用一个几乎没人用的HTML元素<marquee>,通过用下一句开始时间 - 当前句开始时间得到歌词跑完一次所需要的时间,将这个值设置给<marquee>元素,通过不断替换<marquee>元素实现歌词切换,而至于滚动这个元素会自己实现,而且由于设置了循环时间 = 下句开始时间 - 这句开始时间,所以歌词跑完正好是换下一句歌词的时候 如果你是要实现上下滚动的话,用<marquee>就没办法灵活的设置滚动速度了(因为左右滚动完可以直接替换元素实现切换滚动速率,但是上下滚动的话,由于相邻两句速率不一定一样,比如第一句10秒放完,第二句5秒放完,那么,就需要将第1行字的高度,平摊在10秒内滚动完,第二句高度,平摊在5秒内滚动完),所以在这种情况下,建议用类似轮播图的实现思路: 外层是一个歌词框(溢出部分隐藏) 内层是一个包裹框,可以用<ul>实现 然后里面一句歌词对应一个<li> 通过下一句开始时间 - 这句开始时间得到这句运行时间,然后用JS获取当前li元素的高度,将这个高度平均到这段时间内做平滑动画,动画只修改元素的top,建议使用jQuery实现 大致代码(只是写了个实现思路不一定可以运行)HTML: <div class="lyric"> <ul> <li>歌词第一行</li> <li>歌词第二行</li> ... </ul> </div> CSS: .lyric { width: 400px; height: 500px; position: relative; overflow: hidden; }.lyric ul { position: absolute; left: 0; right: 0; top: 0; margin: 0; padding: 0; } .lyric ul li { list-item-style: none; } JS: // 下面示例即为移动一句歌词的demo,这里就用X表示歌词对应的li的jQuery选择器 // 用timeGap表示这句歌词对应的滚动时间 var lyricHeight = X.height();$('.lyric ul').animate({'top': '-' + lyricHeight + 'px'}, timeGap); // 直接对ul上边距做-lyricHeight像素的偏移,动画时间为timeGap毫秒
0
0
0
浏览量0
万码007

为什么在函数内用parseExpr执行会报SQL context is not initialized yet

如DolphinDB用户手册中所述,parseExpr函数解析变量时,首先搜索会话中的局部变量,再搜索共享变量,但不会搜索函数体内定义的局部变量。这里是因为parseExpr中用到了函数参数变量X的缘故。代码优化可如下所示:def yoy_continuous_validation(X, threshold, validation_way, continuous_len){ cmps = [gt, ge, lt, le, eq] index = ['>','>=','<','<=','='].find(string(validation_way)) if(index < 0) return NULL return int(msum(cmps[index](yoy(X), threshold), continuous_len) == continuous_len) }
0
0
0
浏览量0
万码007

怎么找到第一个满足条件的行

可以自定义一个如下所示的函数:def firstTrigger(dt, value, threshold){ return dt[find(value.cumsum() >= threshold, true)] } select firstTriggr(date_time, interval, 86400) from t group by reg_code,address
0
0
0
浏览量0
万码007

mysql为什么用了子查询后,主查询没走主键索引

这是一个非常非常old的问题.mysql 的in子查询 永远被 转为exists 查询, 具体见手册http://dev.mysql.com/doc/refman/5.7/en/subquery-restrictions.html 第一条limitation.演示一下:mysql> explain extended select id from yanse where name in (select name from yan se); ... mysql> show warnings; +-------+------+---------------------------------------------------------------- -------------------------------------------------------------------------------- ----------------------------------------------------------------+ | Level | Code | Message | +-------+------+---------------------------------------------------------------- -------------------------------------------------------------------------------- ----------------------------------------------------------------+ | Note | 1003 | select `test1`.`yanse`.`id` AS `id` from `test1`.`yanse` where <in_optimizer>(`test1`.`yanse`.`name`,<exists>(select 1 from `test1`.`yanse` whe re (<cache>(`test1`.`yanse`.`name`) = `test1`.`yanse`.`name`))) | +-------+------+---------------------------------------------------------------- -------------------------------------------------------------------------------- ----------------------------------------------------------------+ 1 row in set (0.00 sec) in 和exists的不同:https://asktom.oracle.com/pls/asktom/f?p=100:11:::::P11_QUESTION_ID:953229842074 Select * from T1 where x in ( select y from T2 ) is typically processed as: select * from t1, ( select distinct y from t2 ) t2 where t1.x = t2.y; The subquery is evaluated, distinct'ed, indexed (or hashed or sorted) and then joined to the original table -- typically. As opposed to select * from t1 where exists ( select null from t2 where y = x ) That is processed more like: > for x in ( select * from t1 ) loop > if ( exists ( select null from t2 where y = x.x ) > then > OUTPUT THE RECORD > end if end loop
0
0
0
浏览量0
万码007

JAVA 商城商品 sku 数据库怎么保存?

1,普通关系数据库,就使用类目+特有拓展表2,使用MongoDB http://segmentfault.com/q/1010000000264586
0
0
0
浏览量0
万码007

mysql 嵌套 case when 的问题?

因为在Mysql里,整数0与空串''做等于比较的时候,结果为真,你需要把 b.post_status = '' 改为 CAST(b.post_status AS CHAR) = '' 你可以再看看文档Comparison Functions and Operators。
0
0
0
浏览量0
万码007

Node MySQL库连接池问题

参见:https://www.npmjs.com/package... 上面NPM文档说,可以直接使用pool.query(),同时,又说了,当你使用完连接时,调用connection.release() 文档中也说了,connection.release()方法是在用完连接池中的某个连接之后,将其放回到连接池中去的操作 所以,我猜测,说“直接使用pool.query()”,应该是自动完成了connection.release()释放连接控制权的操作 后来,我翻了一下源文件:GitHub 从190行开始,可以看到pool.query()调用了getConnection方法,而且在用完后,执行了query.once('end', function() {conn.release();});,说明前面的猜测是正确的
0
0
0
浏览量0
万码007

Mysql 如何插入和自增id相同的值?

你的这个设计不合理,看得出来你这个order是用来作为排序字段的,并且希望有人工调整的余地,而不是简单的设计成按照主键排序,那这样的话你在select的时候直接用order by `order`, `id` 就解决了这个问题,这样的话order字段只要有一个默认值就可以了,例如10000,优先用此字段排序,然后用id排序 当然还有记得加索引 题外话,不要用mysql的关键字作为字段名,也就是order这类的名字,建议改成priority之类的名字!
0
0
0
浏览量0
万码007

mysql如何计算每项权重占比

SELECT weight,weight/(select sum(weight) from weight_test) from weight_test;
0
0
0
浏览量0
万码007

gitignore忽略某文件目录下的所有,但是要上传这个文件。

就是上传一个空目录呗?git 本身不支持这么做,所以一般都是目录下面放一个空白文件(常见的一般会叫 .gitkeep 之类的),.gitignore 里配置忽略这个目录、但不忽略这个文件。
0
0
0
浏览量0
万码007

git push origin HEAD --force之后, 其它本地仓库git pull不到回滚后的代码 ?

其他人执行:git reset --hard origin/master # master 替换成实际的分支与远程仓库强制同步。但反正我公司谁要放着好好的 git revert 不用、敢去执行 git reset --hard,一律打死。
0
0
0
浏览量0
万码007

idea中的git,如何把本地代码与github中的代码昨比较(类似于svn),操作只有同步,拉取,提交啊?

就算看不到边栏比较的时候也有比较啊……
0
0
0
浏览量0
万码007

git 打上一个标签,如何修改后 重新打标签

先 git tag -d <tagname> 删除标签。然后修改文件。在git commit -m '提交信息' --amend -a 暂存并提交信息。在 git tag -a <tagname> HEAD 打上标签。
0
0
0
浏览量0
万码007

git仓库太大了,有什么办法压缩

gitee要付费用。github的日常推拉又比较差或者可以试试 GitLab 中国,极狐:https://jihulab.com/ 或者其他 git Sass 服务:https://www.v2ex.com/t/313263可不可以 lfs在一个库,commit在另一个库啊可以用 submodules 的方式实现,但是增加了复杂度。
0
0
0
浏览量0
万码007

git 版本发布应该用分支还是标签?

分两种情况讨论吧1. 业务项目这种项目往往就是只有一个版本在生产环境跑,通常习惯是用 tag 标记版本;而用分支标记版本的,个人猜测该团队大概率从 SVN 转到 Git 的2. 开源项目/lib 项目开源项目(尤其是库项目)通常是被别的项目依赖的,多个大版本的生命周期(或者叫做维护期)可能会有重叠,因此用不同的分支可以方便老版本打 hotfix 和新版本继续推进 feature;同时也方便使用者去研究特定版本的代码
0
0
0
浏览量0
万码007

小白如何快速学习github?

GitHub 是一个用于存储和管理代码的在线平台。如果您是一名编程新手,可能会觉得 GitHub 很难学。不过,其实学习 GitHub 并不难,只需要您花一些时间和精力来掌握它的基础知识。对于小白来说,快速学习 GitHub 的方法如下:首先,了解 GitHub 的基本概念,包括什么是版本控制,什么是 Git,什么是 GitHub 等。其次,注册一个 GitHub 账号,并在本地安装 Git 工具。然后,学习 Git 的基本操作,包括如何创建仓库、提交更改、分支管理等。接着,在 GitHub 上创建一个仓库,并学习如何将本地代码推送到远程仓库。最后,学习一些实用的 GitHub 技巧,例如如何使用标签、分支、合并请求等来管理代码。通过这些步骤,您就能够快速学会 GitHub 的基础知识,并开始使用它来管理自己的代码项目。不过,学习是一个持续不断的过程,随着您对 GitHub 的理解加深,您还可以继续学习更多高级功能,例如协作开发、维护项目等。
0
0
0
浏览量0
万码007

Github 怎样看别人项目的全部fork链接?

比如这个强大的项目https://github.com/answerdev/...点右上角的Fork进入创建页面,在表单上面有一个蓝色的链接View existing forks.点击以后就是了https://github.com/answerdev/...
0
0
0
浏览量0
万码007

Github报错返回错误代码128,请问该怎么做?

repository not found 可以参考这个 issue,加个权限即可jobs: build-and-deploy: runs-on: ubuntu-latest permissions: contents: read ...
0
0
0
浏览量0

履历

资深前端开发
上海联影
2024.04-至今
,
资深前端开发
瑞因凡
2023.10-2023.12
,
技术Leader
传音控股
2019.04-2023.10
,
全栈开发工程师
PPTV聚力传媒
2014.06-2019.03
,
开发工程师
百度
2012.04-2014.05
,
中国科学技术大学
硕士
2009.09-2012.03
,
南京邮电大学
本科
2005.09-2009.07