P.S. minor typo, a slightly better chart than (1) pull master branch + build --- > (2) create new branch ---> (3) make pull request ---> (4) update master ---> (5) create new branch ----> repeat
is (1) clone master branch + build --- > (2) create new branch ---> (3) make pull request ---> (4) update master ---> (5) create new branch ----> (6) make pull request ---> repeat (4)-(6) On Mon, Nov 2, 2015 at 5:21 PM, Daniel Blazevski <daniel.blazev...@gmail.com > wrote: > Hello, > > I recently made a pull request for an exact knn algorithm, and have been > considering to start on the approximate knn algorithm and had an issue with > updating the master branch of Flink. > > I am curious to know what best practices are in terms of keeping up to > date with the master branch to avoid the issue I had (to be explained below) > > Some background: > -- I forked another Flink commiter's branch of Flink since he had done > other work on knn (namely https://github.com/chiwanpark/flink) > -- I imported that master branch into IntelliJ > -- I wrote code on a separate branch FLINK-1745, and that built fine. > -- I made the mistake in not using Travis CI from the start, but that was > not a huge issue since only a single import needed to be changed and my > Travis CI build goes through now. > > I then checked out the master branch, and updated master via > `git pull apache master` > > The master branch no longer builds, I get the following error in IngelliJ: > > Error:scalac: Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-contrib/flink-storm-compatibility/flink-storm-compatibility-core/target/classes > is shared between: Module 'flink-storm-compatibility-core' production, > Module 'flink-storm-compatibility-core (1)' production > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/flink-streaming-connectors/flink-connector-kafka/target/classes > is shared between: Module 'flink-connector-kafka' production, Module > 'flink-connector-kafka (1)' production > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-spargel/target/classes > is shared between: Module 'flink-spargel' production, Module 'flink-spargel > (2)' production > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/target/classes > is shared between: Module 'flink-streaming (2)' production, Module > 'flink-streaming-parent' production > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-contrib/flink-storm-compatibility/flink-storm-compatibility-examples/target/test-classes > is shared between: Module 'flink-storm-compatibility-examples' tests, > Module 'flink-storm-compatibility-examples (1)' tests > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/flink-streaming-connectors/flink-connector-rabbitmq/target/test-classes > is shared between: Module 'flink-connector-rabbitmq' tests, Module > 'flink-connector-rabbitmq (2)' tests > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/flink-streaming-connectors/flink-connector-elasticsearch/target/classes > is shared between: Module 'flink-connector-elasticsearch' production, > Module 'flink-connector-elasticsearch (2)' production > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/flink-streaming-connectors/target/classes > is shared between: Module 'flink-streaming-connectors (1)' production, > Module 'flink-streaming-connectors-parent' production > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/flink-streaming-connectors/flink-connector-elasticsearch/target/test-classes > is shared between: Module 'flink-connector-elasticsearch' tests, Module > 'flink-connector-elasticsearch (2)' tests > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-contrib/flink-storm-compatibility/flink-storm-compatibility-core/target/test-classes > is shared between: Module 'flink-storm-compatibility-core' tests, Module > 'flink-storm-compatibility-core (1)' tests > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/flink-streaming-scala/target/test-classes > is shared between: Module 'flink-streaming-scala' tests, Module > 'flink-streaming-scala (1)' tests > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-contrib/flink-storm-compatibility/target/test-classes > is shared between: Module 'flink-storm-compatibility (1)' tests, Module > 'flink-storm-compatibility-parent' tests > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-gelly/target/test-classes > is shared between: Module 'flink-gelly' tests, Module 'flink-gelly (4)' > tests > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/flink-streaming-connectors/flink-connector-rabbitmq/target/classes > is shared between: Module 'flink-connector-rabbitmq' production, Module > 'flink-connector-rabbitmq (2)' production > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-spargel/target/test-classes > is shared between: Module 'flink-spargel' tests, Module 'flink-spargel (2)' > tests > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/flink-streaming-connectors/flink-connector-twitter/target/test-classes > is shared between: Module 'flink-connector-twitter' tests, Module > 'flink-connector-twitter (2)' tests > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/flink-streaming-connectors/flink-connector-twitter/target/classes > is shared between: Module 'flink-connector-twitter' production, Module > 'flink-connector-twitter (2)' production > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-gelly/target/classes > is shared between: Module 'flink-gelly' production, Module 'flink-gelly > (4)' production > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/flink-streaming-connectors/flink-connector-kafka/target/test-classes > is shared between: Module 'flink-connector-kafka' tests, Module > 'flink-connector-kafka (1)' tests > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/flink-streaming-connectors/target/test-classes > is shared between: Module 'flink-streaming-connectors (1)' tests, Module > 'flink-streaming-connectors-parent' tests > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/flink-streaming-connectors/flink-connector-flume/target/test-classes > is shared between: Module 'flink-connector-flume' tests, Module > 'flink-connector-flume (1)' tests > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/flink-streaming-examples/target/classes > is shared between: Module 'flink-streaming-examples' production, Module > 'flink-streaming-examples (1)' production > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/flink-streaming-core/target/test-classes > is shared between: Module 'flink-streaming-core' tests, Module > 'flink-streaming-core (1)' tests > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/flink-streaming-examples/target/test-classes > is shared between: Module 'flink-streaming-examples' tests, Module > 'flink-streaming-examples (1)' tests > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-contrib/flink-storm-compatibility/target/classes > is shared between: Module 'flink-storm-compatibility (1)' production, > Module 'flink-storm-compatibility-parent' production > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/flink-streaming-core/target/classes > is shared between: Module 'flink-streaming-core' production, Module > 'flink-streaming-core (1)' production > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/target/test-classes > is shared between: Module 'flink-streaming (2)' tests, Module > 'flink-streaming-parent' tests > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-gelly-scala/target/classes > is shared between: Module 'flink-gelly-scala' production, Module > 'flink-gelly-scala (4)' production > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/flink-streaming-connectors/flink-connector-flume/target/classes > is shared between: Module 'flink-connector-flume' production, Module > 'flink-connector-flume (1)' production > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-gelly-scala/target/test-classes > is shared between: Module 'flink-gelly-scala' tests, Module > 'flink-gelly-scala (4)' tests > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-staging/flink-streaming/flink-streaming-scala/target/classes > is shared between: Module 'flink-streaming-scala' production, Module > 'flink-streaming-scala (1)' production > Output path > /Users/danielblazevski/Dropbox/code/flink-chiwan/flink/flink-contrib/flink-storm-compatibility/flink-storm-compatibility-examples/target/classes > is shared between: Module 'flink-storm-compatibility-examples' production, > Module 'flink-storm-compatibility-examples (1)' production > Please configure separate output paths to proceed with the compilation. > TIP: you can use Project Artifacts to combine compiled classes if needed. > > > What is the most seamless way to > (1) pull master branch + build --- > (2) create new branch ---> (3) make > pull request ---> (4) update master ---> (5) create new branch ----> repeat > > I was able to do steps (1)-(3), but got an error on step (4). The only > solution I can think of is a hack: import a whole new project into > IntelliJ using the most up-to-date version of master, but that sounds silly > to do that each time I want to repeat step (4) > > Thanks! > Dan > > > > > >