Page History
...
- Please, make sure to create a "Pull Request" from a branch and NOT from your "master". (You'll understand exactly why after reading #2)
- Be warned that any additional changes/commits you make to that branch (before the "Pull Request" is accepted/merged) will immediately be included in that existing "Pull Request". This means that, if you want to continue your local development, you must create that "Pull Request" from a semi-static branch (so that any additional commits you make on "master" in the meantime don't get included as part of the existing "Pull Request").
- The reason why this occurs is that a "Pull Request" just points at a specific "branch" (the branch it was initialized from). It does NOT point at a specific set of commits. So, when the "Pull Request" is accepted/merged, you are pulling in the latest version of that "branch". For more information, closely read the GitHub help page on Pull Requests, specifically noting the following statement:
Pull requests can be sent from any branch or commit but it's recommended that a topic branch be used so that follow-up commits can be pushed to update the pull request if necessary.
- The reason why this occurs is that a "Pull Request" just points at a specific "branch" (the branch it was initialized from). It does NOT point at a specific set of commits. So, when the "Pull Request" is accepted/merged, you are pulling in the latest version of that "branch". For more information, closely read the GitHub help page on Pull Requests, specifically noting the following statement:
- Once your "Pull Request" is created, you can use the GitHub Pull Request tools to communicate with the Committer who is assigned to the Pull Request. If further changes are requested, you can make those changes on the branch where you initiated the Pull Request (and those changes will automatically become part of the Pull Request, as described above)
Common DSpace Git/GitHub Issues
Maven Error: "*/src/main/webapp" does not exist
If you have checked out DSpace 1.8.2 or previous via GitHub, the first time you build DSpace, Maven may error out with a message similar to:
Code Block |
---|
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.1.1:war (default-war) on project dspace-sword-client-xmlui-webapp: Execution default-war of goal org.apache.maven.plugins:maven-war-plugin:2.1.1:war failed: basedir /dspace-src/dspace-sword-client/dspace-sword-client-xmlui-webapp/src/main/webapp does not exist -> [Help 1] |
This error is essentially an artifact of DSpace only supporting SVN in previous releases. Unfortunately, although these "/src/main/webapp/" empty directories existed in SVN, they are ignored by Git/GitHub. This is due to Git's inability to track empty directories.
So, if you run into any error while trying to recompile with mvn package
that a specific "src/main/webapp" directory does not exist, then you will have to create that directory. The DSpace GitHub repository has since fixed this issue (on the latest "master" code and all future releases). But if it affects you, then these are the steps to fix this.
- First, create the missing "src/main/webapp" directory(ies). For example:
Code Block mkdir -p dspace/modules/jspui/src/main/webapp mkdir -p dspace/modules/lni/src/main/webapp mkdir -p dspace/modules/oai/src/main/webapp mkdir -p dspace/modules/solr/src/main/webapp mkdir -p dspace/modules/sword/src/main/webapp mkdir -p dspace/modules/swordv2/src/main/webapp mkdir -p dspace/modules/xmlui/src/main/webapp
- In each directory, put a place-holder ".gitignore" file, so that Git tracks the directory. For example:
Code Block touch dspace/modules/jspui/src/main/webapp/.gitignore touch dspace/modules/lni/src/main/webapp/.gitignore touch dspace/modules/oai/src/main/webapp/.gitignore touch dspace/modules/solr/src/main/webapp/.gitignore touch dspace/modules/sword/src/main/webapp/.gitignore touch dspace/modules/swordv2/src/main/webapp/.gitignore touch dspace/modules/xmlui/src/main/webapp/.gitignore
- Then, rebuild DSpace!