在前面说了一些有关Admin的知识,但实际开发运用中,仅凭Admin的配置很难满足项目的定制化需求,因此基于CRM的二次开发则应运而生。

由于国内资料相对较少,所以很多入门新手无处下手,那这里就简单介绍下我所使用的IDE,并结合Git对代码进行管理。

IDE

首先,我选用了VS Code作为IDE,这里可能有些小伙伴便要提问了:我发现很多成熟的项目都是使用Force.com来开发的呀,为什么这里使用VS Code呢?有什么推荐意义?

可见,2019年10月12日之后,Force.com不再支持和更新,并且官网推荐Visual Studio Code,因此这里使用VS Code作为IDE。

下载链接:https://code.visualstudio.com/Download

Git

目前,Git作为主流代码管理工具,国内大部分企业也使用该工具对代码进行管理,不例外小编公司也是使用Git的,所以这里简单介绍下小编项目中使用的方法,如果不合理之处,望大佬们斧正。

学习资料:https://git-scm.com/book/zh/v2


Part 1: 从Git中克隆代码到本地

  • git clone https://github.com/git/git

这里仅为示例,详细地址以各自工程为准,当然有关git的配置这里就不详谈了。

Part 2: 在VS Code中安装Salesforce和Git插件

  • 在VS Code中打开代码工程
  • 安装Salesforce Extension Pack


  • 安装Git Extension pack

Part 3: 认证一个Org

  • 打开代码工程
  • 打开Command palette(shift+command+p/F1)
  • SFDX: Authorize an Org

  • 选择要登录的模式,Sandbox还是Production

  • 为Org设置别名,便于之后设置默认Org,这里设为trailEnvironment

  • 设置用户名和密码

Part 4: 设置默认Org

  • SFDX: Set a Default Org, 当本地认证多个Org时,需要设置默认Org,防止操作混乱

 注意: 在切换默认Org时,本地的代码不会发生任何改变,这点和Git切换分支是不同的。

  • 选择需要操作的Org(选择上面添加的trailEnvironment),将其设为默认Org

Part 5: 从Org中拉取代码

  • 选择项目工程中的某个组件或者组件的某个文件
  • 右击
  • 选择SFDX: Retrieve Source from Org, 便可从Org中拉代码到本地

注意: 当你选择一个文件夹或者整个工程,然后拉取代码到本地,你会发现没有任何代码被拉取下来。当然,如果你想拉取某个类或者某个组件, 你可以在VS Code中创建和Org中名字一样的类或者组件,然后右击拉取便可成功拉取文件至本地。除此之外,可以使用pacakge.xml的方式来拉取多个组件或者整个项目,或者针对DX环境可以直接SFDX: Pull Source from Org. 详细的内容,我会在后面的文章分享出来。

Part 6: 将本地代码部署至Org

  • 你可以选择一个文件,一个组件,一个文件夹,甚至于整个项目工程
  • 右击
  • 选择 SFDX: Deploy Source to Org便可将代码部署至默认的Org环境中

Part 7: 将本地代码上传至Git

  • Git: Commit

  • Git: Push

注意: 如果你习惯于命令行的方式上传git,这里你可以Terminal下直接输入git命令。

[kaiwu3@localhost:~/Works/Code/sp]$git add .
[kaiwu3@localhost:~/Works/Code/sp]$git commit -m 'change release branch from release to release/dev'
[feature/kai 9cce974] change release branch from release to release/dev
1 file changed, 1 insertion(+), 1 deletion(-)
[kaiwu3@localhost:~/Works/Code/sp]$git push

 作者:吴家二少
本文欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接 

  

 

Salesforce学习之路(三)利用VS Code结合Git开发Salesforce的更多相关文章

  1. Salesforce学习之路-developer篇(一)利用VS Code结合Git开发Salesforce

    Part 1: 从Git中克隆代码到本地 git clone https://github.com/git/git Part 2: 在VS Code中安装Salesforce和Git插件 在VS Co ...

  2. Salesforce学习之路(十三)Aura案例实战分析

    Aura相关知识整合: Salesforce学习之路(十)Aura组件工作原理 Salesforce学习之路(十一)Aura组件属性<aura:attribute /> Salesforc ...

  3. 学习之路三十九:新手学习 - Windows API

    来到了新公司,一开始就要做个程序去获取另外一个程序里的数据,哇,挑战性很大. 经过两周的学习,终于搞定,主要还是对Windows API有了更多的了解. 文中所有的消息常量,API,结构体都整理出来了 ...

  4. Redis——学习之路三(初识redis config配置)

    我们先看看config 默认情况下系统是怎么配置的.在命令行中输入 config get *(如图) 默认情况下有61配置信息,每一个命令占两行,第一行为配置名称信息,第二行为配置的具体信息.     ...

  5. Salesforce学习之路-admin篇

    Salesforce是一款非常强大的CRM(Customer Relationship Management)系统,国外企业使用十分频繁,而国内目前仅有几家在使用(当然,国内外企使用的依旧较多),因此 ...

  6. Salesforce学习之路(一)几个简单概念

    Salesforce是一款非常强大的CRM(Customer Relationship Management)系统,国外企业使用十分频繁,而国内目前仅有几家在使用(当然,国内外企使用的依旧较多),因此 ...

  7. Orleans[NET Core 3.1] 学习笔记(三)( 1 )本地开发配置

    本地开发配置 本地开发和调试的时候,我们可能不需要去关注集群和网络ip端口.所以对于本地开发模式,Orleans给了我们比较简单的配置方式. Silo配置 在本地开发的配置模式下,Orleans会默认 ...

  8. Salesforce学习之路-developer篇(三)利用Visualforce Page实现页面的动态刷新案例学习

    Visualforce是一个Web开发框架,允许开发人员构建可以在Lightning平台上本地托管的自定义用户界面.其框架包含:前端的界面设计,使用的类似于HTML的标记语言:以及后端的控制器,使用类 ...

  9. Salesforce学习之路-developer篇(二)利用Jenkins和Bitbucket实现Salesforce的CI/CD功能

    上文提到,基于CRM的二次开发是必不可少的,但是在实际项目中CI/CD是不可忽略的一个重要部分,与传统的Java,Python项目不同,如果对Salesforce进行持续集成和持续部署呢? 结合找到的 ...

随机推荐

  1. js获取数字数组最大值的几种方式

    原生Math.max方法 Math.max 方法不能接收数组,可以使用ES6的...将数组打散 const arr = [111, 12, 111, 34, 2, 5, 76]; console.lo ...

  2. Java自学第9期——Lambda表达式

    1.入门 使用场景:如果创建函数式接口(该接口的抽象方法只能有一个)的实例时,使用Lambda表达式更加简洁方便. 2.格式: (形参列表) -> { 代码块 } 3.简化 只有一个参数时,可以 ...

  3. 一文读懂什么是kubernetes?

    kubernetes概述 kubernetes面世不过短短几年时间,kuberenetes已经成为容器编排领域事实上的标准,无论是公有云,私有云或混合云,kubernetes都将作为一个为任何应用,任 ...

  4. 翻译:《实用的Python编程》03_00_Overview

    目录 | 上一节 (2 处理数据) | 下一节 (4 类和对象) 3. 程序组织 到目前为止,我们已经学习了一些 Python 基础知识并编写了一些简短的脚本.但是,当开始编写更大的程序时,我们会想要 ...

  5. Python3.x 基础练习题100例(01-10)

    练习01: 题目: 有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 分析: 可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. ...

  6. 【秒懂音视频开发】02_Windows开发环境搭建

    音视频开发库的选择 每个主流平台基本都有自己的音视频开发库(API),用以处理音视频数据,比如: iOS:AVFoundation.AudioUnit等 Android:MediaPlayer.Med ...

  7. 100道Java高频面试题(阿里面试官整理)

    我分享文章的时候,有个读者回复说他去年就关注了我的微信公众号,打算看完我的所有文章,然后去面试,结果我后来很长时间不更新了...所以为了弥补一直等我的娃儿们,给大家的金三银四准备了100道花时间准备的 ...

  8. 你真的搞懂了Java中的<<、>>、>>>运算符嘛?

    在搞懂<<.>>.>>>之前,我们需要先了解二进制中的源码.反码.补码... 二进制中的原码.反码.补码 有符号数: 对于有符号数而言,符号的正.负机器是无法 ...

  9. 线上MySQL读写分离,出现写完读不到问题如何解决

    大家好,我是历小冰. 今天我们来详细了解一下主从同步延迟时读写分离发生写后读不到的问题,依次讲解问题出现的原因,解决策略以及 Sharding-jdbc.MyCat 和 MaxScale 等开源数据库 ...

  10. AtCoder Beginner Contest 171-175 F

    171 F - Strivore 直接把初始字符当成隔板,统计的方案数会有重复 为了避免重复情况,规定隔板字母尽可能最后出现,即在隔板字母后面不能插入含隔板字母的字符串 所以在隔板字母后插入的字符只有 ...