Hi friends! When developing pipeline on a local ma...
# ask-community
a
Hi friends! When developing pipeline on a local machine how do you guys recommend working on two branches at once. For example, let’s say on branch one, we make some edits. Then we kick off the job which takes an hour to run. While that job is running, I want to work on something else in the same dagster repo. So I make branch 2 off master. But this’ll mess up the run happening based off branch one. I figured one way to do it is to spin up multiple instances of dagit pointed to multiple dagster home and two git repos checked out. But idk if there’s a more first class way?
@Andrew Martin
a
You could use git subtree to create multiple working trees from the same git repo.
But also, if possible, you should limit the size of the data you use during development to make sure your pipeline executes quickly. Aim for a a couple minutes at most.
s
You might also consider taking a snapshot of the source code and deploying and running it inside a docker container. Then you could switch branches and work on something else while the job is running in the docker container in the background. But I agree with @antonl that it makes good sense to limit the "runtime" in development by using reduced or contrived datasets. Even better is testing your `op`s using a testing framework so that your development workflow doesn't involve having to run a
job
in its entirety. The
dagster
codebase is very well suited to this kind of testing - in fact it seems to have been designed with testing in mind - and there are several examples of testing through the codebase examples and the documentation.