re-base

社区招聘需求汇总(2021-01-09)

若如初见. 提交于 2021-01-12 23:04:16
最近社区里有些招聘的需求,我们汇总了下,有兴趣的朋友请自行联系。 如果你的团队也在招聘,可以和我们联系,我们汇总后,会不定时的发出。 币信 区块链工程师: 岗位描述 主要负责公链基础设施研究与开发; 负责公链上层的应用产品的设计和研发工作; 不限技术栈,可根据个人开发偏好进行技术选型; 职位要求 对区块链技术有浓厚兴趣; 熟悉常用的数据结构和算法; 有区块链, 分布式网络、应用密码学、网络安全等研发经验; 熟悉 Golang 、C/C++,Rust,java,Javascript,Python 等至少一种编程语言,良好的编程习惯 优先 有过区块链钱包开发经验; 熟悉以太坊 ETH 及 Solidity 合约语言; 熟悉常用加密算法 币信 前端工程师: 岗位描述 主要负责加密货币钱包的浏览器插件开发; 单页应用 SPA 的开发和桌面端封装( Electron ); 不限技术栈,可根据个人开发偏好进行技术选型 职位要求 独立思考、分析、解决、归纳问题的能力; 2 年及以上相关工作经验,编码能力和编码风格良好,精通常用的数据结构与算法; 熟悉 Javascript / HTML / CSS / HTTP,熟悉 W3C 标准与 ES 规范,熟悉 Web 语义化和相关前端技术; 熟练使用目前各类主流前端框架( React / Vue / Angular 选之一 )并理解相关实现原理 优先

搞懂 Git 工作原理,遇到问题不再瞎蒙

拟墨画扇 提交于 2020-12-28 19:32:36
上一篇文章我们了解了 Git 的常用命令,这一篇文章我们将来了解这些常用命令的工作原理,以便更好的掌握这些命令。 在开始本篇文章之前,读者可以先试着回答以下几个问题: 是否了解 工作区 、 暂存区 、 仓库 之间的区别? Git 的常用命令在三大区域中是如何工作的? 分支是如何合并的?原理是什么? 分支合并中 rebase 和 merge 的区别? 如果有回答不出的,那么建议还是往下仔细看看文章吧~ 三大分区 我们首先用一张图来理解工作区、暂存区和仓库的位置: 我们先看由下而上的路径,首先 工作区 就是我们当前的文件目录,我们改完代码,用 git add 命令把当前文件加入 暂存区 ,然后 git commit 把 暂存区 生成的快照提交到 本地仓库 ,最后再用 git push 命令把 本地仓库 的提交复制到 远程仓库 ,也就是 Github 之类的在线仓库。 而由上到下的路径其实也很好理解, git pull 用来将 远程仓库 的最新提交拉取到 本地仓库 , git reset -- files 用来撤销最后一次 git add files ,也就是撤销 commit ,这是我们前面提到的回滚的一种办法; git checkout -- files 则是把文件从 暂存区 复制到工作区,用来丢弃本地修改(也就是覆盖掉还未 add 到暂存区的改动)。 常用命令的工作原理

以太坊的 Gas 机制

给你一囗甜甜゛ 提交于 2020-12-24 09:01:32
以太坊对智能合约的影响是深刻的,即使不用以太坊,只要做智能合约开发,就避免不了要学一下以太坊。而学习以太坊的第一天就肯定会碰到的概念就是 Gas ,这个就是咱们今天的主角,理解了 Gas 机制也就基本理解的智能合约的工作原理了。文章中首先介绍以太坊的账户和交易,以便介绍清楚智能合约工作的基本上下文,或者说让大家理解 Gas 使用的场景,接下来聊聊 Gas 的工作原理,让大家理解为啥已经有了以太币还要有 Gas ,最后深入到细节聊聊 gasPrice 和 gasLimit 这些交易参数的实际作用。 账户和交易 先进入第一部分,聊聊以太坊账户的分类,以及通过在各个账户间发交易都能完成哪些工作。 以太坊账户其实是分两类的。一类是普通账户,也被称为外部拥有账户,因为账户的拥有者在以太坊系统本身之外,是自然人。普通账户就类似于比特币账户了,两个普通账户之间可以发交易,但是交易的功能就基本局限于转账了。但是以太坊上还能发一种特殊的交易,叫做合约创建交易,这种交易的特点就是只有发送方,没有接受方,同时发送交易的时候也伴随着有代码上传到区块链。这种交易一旦发出,就会在以太坊系统上创建一个新的账户。这就是我们要介绍的第二类账户了,叫做合约账户。合约账户跟普通账户的区别是,合约账户是以太坊系统所拥有的账户,或者说账户的拥有者是机器,而不是自然人。另外,合约账户最大的特点就是内置代码,你肯定能猜到

git rebase和git merge的用法

人走茶凉 提交于 2020-12-23 18:43:17
http://softlab.sdut.edu.cn/blog/subaochen/2016/01/git-rebase%E5%92%8Cgit-merge%E7%9A%84%E7%94%A8%E6%B3%95%E5%8C%BA%E5%88%AB/ 1 前言 git rebase和git merge常令人迷惑,都是合并分支,什么时候用rebase,什么时候用merge呢?下面通过两个实验彻底搞清楚这两个命令的区别。 2 准备工作 hello-git是一个已经有一些提交(C0-C5)的示例项目,我们下面的两个实验都基于hello-git,分别通过merge和rebase两种方法将topoic分支合并到master分支。首先做一点点准备工作: $ git clone https://github.com/subaochen/hello-git # 获取演示文件 $ git fetch origin topic # 获取topic分支。默认git clone下来的是master分支 此时hello-git的状态如图 1 所示,也就是说,master分支指向C3,topic分支指向C5,当前分支是master(HEAD指向master)。 图 1:hello-git的初始状态 3 merge方法合并分支 git merge用法简单,要把topic分支合并到master分支

相见恨晚的 Git 命令动画演示,一看就懂!

邮差的信 提交于 2020-12-19 06:06:48
持续进步的同学都关注了 “ 1024译站 ” 这是1024译站的第 80 篇文章 来源:dev.to 作者:Lydia Hallie 翻译:大道至简 虽然 Git 是一个强大的工具,但是我觉得大部分人都会同意我说的:它也可以是一个……噩梦!我一直觉得,使用 Git 的时候把操作过程在脑海里视觉化会非常有用:当我执行某个命令的时候,分支之间是如何交互的?又是如何影响提交历史的?当我在 master 分支执行 hard reset 、 force push 到 origin 、在 .git 文件夹执行 rimraf 的时候,为什么我的同事都哭了? 我认为创建一些最常见、最实用的命令的可视化示例是最佳使用指南!接下来介绍的这些命令,很多都有可选参数,用于改变命令的行为。文中的示例只讨论命令的默认行为,不会涉及太多的配置选项。这些命令包括 merge , rebase , reset , revert , cherry-pick , fetch , pull , reflog 等。 merge 多分支可以非常方便地将新的改动互相隔离,并确保你不会意外地将未经批准或破坏性的变更推到生产环境。一旦变更被批准,我们就能在生产分支中得到这些变更。 从一个分支获取变更到另一个分支的方式之一是执行 git merge 命令。Git 有两类合并操作: fast-forward 和 no-fast

看小姐姐用动图展示 10 大 Git 命令

元气小坏坏 提交于 2020-12-10 18:20:58
作者:Lydia Hallie https://dev.to/lydiahallie/cs-visualized-useful-git-commands-37p1 git merge、git rebase、git reset、git revert、git fetch、git pull、git reflog……你知道这些 git 命令执行的究竟是什么任务吗?如果你还有些分不清楚,那千万不能错过这篇文章。在本文中,熟知 JavaScript、TypeScript、GraphQL、Serverless、AWS、Docker 和 Golang 的 21 岁年轻软件顾问 Lydia Hallie 通过动图形式直观地介绍了这些常用 git 命令的工作过程,包你过目不忘。 尽管 Git 是一款非常强大的工具,但如果我说 Git 用起来简直是噩梦,大多数人也会认同我的说法。我发现在使用 Git 时,在头脑里可视化地想象它会非常有用:当我执行一个特定命令时,这些分支会如何交互,又会怎样影响历史记录?为什么当我在 master 上执行硬重启,force push 到原分支以及 rimraf 我们的 .git 文件夹时,我的同事哭了? 我觉得创建一些最常用且最有用的 Git 命令的可视化示例会是一个完美的用例!下面我将介绍的很多命令都有可选参数——你可以使用这些参数来改变对应命令的行为

Web3极客日报 #339

吃可爱长大的小学妹 提交于 2020-11-30 23:32:47
微信不支持外部链接,可以点击文章底部的 阅读原文 ,方便阅读文中的链接, 也可通过 http://daily.rebase.network/ 浏览每期日报内容。 1. 反编译以太坊智能合约 @Gala https://medium.com/coinmonks/decompiling-ethereum-smart-contracts-b283ae80f8a0 智能合约以16进制存储在以太坊中并执行,但对于去中心化的应用来说公开合约是获取信任的方式,当Dapp未公开我们可以反编译来对合约进行验证,本文介绍几种反编译方式,感兴趣可以了解下。 2. 部署去中心化网站 @Gala https://towardsdatascience.com/decentralizing-your-website-f5bca765f9ed 想象一下如果你的网站静态资源存放在中心化节点中,你的网站crash的概率,而且带宽的费用将急剧下降,虽然当前去中心化存储还在发展但不妨碍你去了解它,文章介绍如何去中心化部署你的网站。 3. Go和JavaScript的Wasm性能对比 @Gala https://medium.com/vacatronics/webassembly-in-go-vs-javascript-a-benchmark-6deb28f24e9d Wasm越来越热,大家都开始试用、尝鲜

DeFi 七天乐——去中心化交易所(DEX)

非 Y 不嫁゛ 提交于 2020-11-29 19:56:06
虽然中心化交易所(CEX)允许在流动性充裕的情况下进行大宗交 易,但是由于用户在交易所中并不拥有其资产的所有权,因此中心 化交易所仍具有很大的风险。2019 年,超过 2.9 亿美元的加密货币 被盗,同时超过 50 万条登录信息从交易所泄漏出去。 越来越多人开始意识到这些风险,并转向去中心化交易所(DEX) 。DEX 通过使用智能合约和链上交易来减少或消灭对中介的需要。受欢迎的去中心化交易所包括 Kyber Network、Uniswap、Dex Blue 和 dYdX 等项目。 DEX 有两种类型——基于订单簿的 DEX 和基于流动性池的 DEX。像 dYdX 和 dex.blue 那样的订单薄 DEX 的运作方式与 CEX 类似,用户可以 按限价或市价提交买卖订单。两种类型的交易所之间的主要区别在 于,对于 CEX,交易资产需要保管在交易所钱包上,而对于 DEX,交 易资产可以保管在用户自己的钱包上。 然而,基于订单薄的 DEX 面临的最大问题之一是流动性。 用户在订单薄中的订单可能需要等待很长时间才能成交。 为了解决这个问题,引入了基于流动性池的 DEX。 流动性池本质上是智能合约中的代币准备金,而且用户可以立即买卖流动性池中的可用代币。 代币的价格是通过算法确定的,会因大额交易而上涨。 DEX 流动性池可以跨多个 DEX 平台共享,这将推高任何单个平台的可用流动性。

小姐姐用动画图解Git命令,一看就懂!

不羁的心 提交于 2020-11-27 17:01:06
小姐姐用动画图解Git命令,一看就懂! 收录于话题 #打怪升级进阶之路 30个 「 点击图片获取最近两年爆款好文 」 无论是开发、运维,还是测试,大家都知道Git在日常工作中的地位。所以,也是大家的必学、必备技能之一。之前公众号也发过很多git相关的文章: Git这些高级用法,喜欢就拿去用! 一文速查Git常用命令,搞定版本控制照做就ok 大牛总结的Git使用技巧,写得太好了! 掌握这10条规范,轻松搞定Git! 但是呢,民工哥,也经常在后台看到读者说,命令太多了不好记啊,时间长了不用又忘记了等等的吐槽。是啊,要学一门技术真难,何况现在技术更新、迭代这么快..... 所以,对于学习Git这门技术,要是有一个一看就懂,一学就会的入门资料就好了。前不久,国外的一位小姐姐写了一篇这样的文章《CS Visualized: Useful Git Commands》。作者是来自英属哥伦比亚的小姐姐 Lydia Hallie,在这篇文章里面,她通过生动形象的动画,以更加直观的方式,向开发者展示 Git 命令中的 merge、rebase、reset、revert、cherry-pick 等常用骚操作的具体原理。 下面就给大家带来一些实例分享: 1、git merge fast-forward模式 no-fast-forward模式 合并冲突修复的过程 ,动画演示如下: 2、git rebase

Git push 时如何避免出现 "Merge branch 'master' of ..."

不打扰是莪最后的温柔 提交于 2020-11-24 10:30:06
在使用 Git 的进行代码版本控制的时候,往往会发现在 log 中出现 "Merge branch 'master' of ..." 这句话,如下图所示。日志中记录的一般为开发过程中对代码的改动信息,如果出现过多例如上述描述的信息会造成日志的污染。 阅读了一些外文的博客,下面就来一探究竟。 产生原因分析 当多人合作开发一个项目时,本地仓库落后于远程仓库是一个非常正常的事情,可参考下图。 A-B-C(master) \ D(origin/master) 具体情境如下: 我当前拉取的远端版本为 B ,此时修改了代码,并在本地仓库 commit 一次,但并未 push 到远端仓库。 另一位开发者在 B 的基础上,同样 commit 了一次并 push 到远端仓库。那么这个时候,我再 push 自己的代码就会发生错误,如下。 To github.com:maoqyhz/usegit.git ! [rejected] master -> master (fetch first) error: failed to push some refs to 'git@github.com:maoqyhz/usegit.git' hint: Updates were rejected because the remote contains work that you do hint: not have