在前面说了一些有关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. RxHttp - 轻量级、可扩展、易使用、完美兼容MVVM、MVC架构的网络封装类库

    前言 RxHttp是基于RxJava2+Retrofit 2.9.0+OkHttp 4.9.0实现的轻量级,完美兼容MVVM架构的网络请求封装类库,小巧精致,简单易用,轻轻松松搞定网络请求. GitH ...

  2. idea 如何在新窗口中打开项目

    参考链接:https://blog.csdn.net/dreamfly88/article/details/52240188 以前一直再用eclipse,可以同时打开好几个项目,idea中同样支持打开 ...

  3. BurpSuite生成快捷方式

    Win下 在win系统写个脚本,能方便快捷的打开burp. burp.bat @echo oFF if "%1" neq "1" ( >"%te ...

  4. Elasticsearch精进之路:elasticsearch-head插件使用教程

    一.elasticsearch-head插件的作用 ealsticsearch是一个分布式.RESTful 风格的搜索和数据分析引擎,所有的数据都是后台服务存储着,类似于Mysql服务器,因此如果我们 ...

  5. 【Arduino学习笔记07】模拟信号的输入与输出 analogRead() analogWrite() map() constrain()

    模拟信号:Arduino中的模拟信号就是0v~5v的连续的电压值 数字信号:Arduino中的数字信号就是高电平(5V)或者低电平(0V),是两个离散的值 模拟信号->数字信号:ADC(模数转换 ...

  6. 如何在 ASP.Net Core 中使用 Lamar

    ASP.Net Core 自带了一个极简的 开箱即用 的依赖注入容器,实际上,你还可以使用第三方的 依赖注入容器 来替代它,依赖注入是一种设计模式,它能够有效的实现对象之间的解耦并有利于提高单元测试和 ...

  7. 002-JVM部分

    JVM部分数据整理 一.运行时数据区域 Java运行时内存区域主要分为线程私有区域[程序计数器.虚拟机栈.本地方法区].线程共享区域[Java堆.方法区].直接内存(不受JVM GC管理) 1.线程私 ...

  8. Hibernate 组合查询+分页

    MVC模型:Hibernate+Struts2 dao层: public List<UserBean> searchList(UserBean uBean,int pageIndex,in ...

  9. Qt update刷新之源码分析(三)

    大家好,我是IT文艺男,来自一线大厂的一线程序员 上次视频给大家从源码层面剖析了Qt刷新事件(QEvent::UpdateRequest)的处理流程,这次视频主要从源码层面剖析对刷新事件的进一步处理, ...

  10. python中类的魔法方法

    __xx__这种方法,在Python中均称为魔法方法 1.__init__(self) 该方法的作用是初始化对象 在创建对象时被默认调用,不需要手动调节 self参数不需要开发者传递,解释器会自动将创 ...