1

I have two scratch orgs, one has data(both on local and on remote) and other is empty. Then, I pushed the data from my first org to second one using sfdx force:source:push command. The data is available online(remotely) on the second org, but when I tried to pull data from the second org to the local folder it shows "No result found(that there is no difference b/w remote and local)".

Does anyone have any idea how can I sync my data?

  • 3
    You say you have two scratch orgs - are these orgs in completely separate Salesforce DX projects? Have you made changes to the configuration in Org 2 that should be pullable? On a first read, this sounds like expected behavior, so I'm not sure how to understand the issue. – David Reed May 1 '18 at 11:33
  • Hi @DavidReed, both the scratch org have different DX projects. – Hemendra Singh Rajawat May 1 '18 at 15:18
1

With Salesforce DX, the source of truth is always the version control repository (your local work directory). It sounds like you have a setup like this:

sfdx-project-1/ 
     force-app/
         (your source code lives here)
     --> Link to Scratch Org 1
     --> Link to Scratch Org 2

sfdx-project-2/ 
     force-app/
         (empty)
     --> Link to Scratch Org 2

You populated Scratch Org 2 from Scratch Org 1, and now you're trying to pull that data back down from Scratch Org 2 into sfdx-project-2.

Here's the thing: you probably don't need to do this, because sfdx-project-1 is really the source of truth for your project. You could simply do something like (assuming you're using something with a POSIX-y command line):

cp -R sfdx-project-1/force-app/* sfdx-project-2/force-app/

or

git clone sfdx-project-1 sfdx-project-2

to copy all of your file content locally. Your projects should both match up with both scratch orgs at that time.

I suspect sfdx is confused because you're going in some way the "wrong" direction by pulling a complete source set from the scratch org (not the source of truth) into a version control repository that's empty (the source of truth shouldn't be empty).

  • Hi David, thanks for the response. The reason why I am doing this is I have developed my functionality in ScratchOrg1 and I want to test my functionality in ScratchOrg2 as Salesforce recommend using two different scratch org for both development and testing. So, I have pushed all my data from ScratchOrg1 to ScratchOrg2. Am I doing it right or there is a better approach for this? – Hemendra Singh Rajawat May 3 '18 at 14:38
  • Can you link to that recommendation? It doesn't make a lot of sense to me apropos of nothing. – David Reed May 3 '18 at 15:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.