diff options
author | silverwind <me@silverwind.io> | 2020-07-27 20:05:42 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-07-27 14:05:42 -0400 |
commit | e67c042511f859029f141a94d30824a4522898b9 (patch) | |
tree | 72635d38589893796ef11c65966562c362955d45 /docs | |
parent | bfb25e4be17ba33f17156aeb7c326d80e46855ac (diff) | |
download | gitea-e67c042511f859029f141a94d30824a4522898b9.tar.gz gitea-e67c042511f859029f141a94d30824a4522898b9.zip |
Add 'watch-backend' (#12330)
* Add 'watch-backend'
This leverages `air` to watch the backend files and trigger `make
backend` automatically when they change. It seems to work rather well
together with `watch-frontend`.
Fixes: https://github.com/go-gitea/gitea/issues/12318
* rework docs to a new section for continuous build
Co-authored-by: techknowlogick <techknowlogick@gitea.io>
Diffstat (limited to 'docs')
-rw-r--r-- | docs/content/doc/advanced/hacking-on-gitea.en-us.md | 34 |
1 files changed, 18 insertions, 16 deletions
diff --git a/docs/content/doc/advanced/hacking-on-gitea.en-us.md b/docs/content/doc/advanced/hacking-on-gitea.en-us.md index 5c3f199944..b24260c68a 100644 --- a/docs/content/doc/advanced/hacking-on-gitea.en-us.md +++ b/docs/content/doc/advanced/hacking-on-gitea.en-us.md @@ -91,7 +91,23 @@ The simplest recommended way to build from source is: TAGS="bindata sqlite sqlite_unlock_notify" make build ``` -See `make help` for all available `make` tasks. Also see [`.drone.yml`](https://github.com/go-gitea/gitea/blob/master/.drone.yml) to see how our continuous integration works. +The `build` target will execute both `frontend` and `backend` sub-targets. If the `bindata` tag is present, the frontend files will be compiled into the binary. It is recommended to leave out the tag when doing frontend development so that changes will be reflected. + +See `make help` for all available `make` targets. Also see [`.drone.yml`](https://github.com/go-gitea/gitea/blob/master/.drone.yml) to see how our continuous integration works. + +## Building continuously + +Both the `frontend` and `backend` targets can be ran continuously when source files change: + +````bash +# in your first terminal +make watch-backend + +# in your second terminal +make watch-frontend +```` + +On macOS, watching all backend source files may hit the default open files limit which can be increased via `ulimit -n 12288` for the current shell or in your shell startup file for all future shells. ### Formatting, code analysis and spell check @@ -123,26 +139,12 @@ make revive vet misspell-check ### Working on JS and CSS -For simple changes, edit files in `web_src`, run the build and start the server to test: +Either use the `watch-frontend` target mentioned above or just build once: ```bash make build && ./gitea ``` -`make build` runs both `make frontend` and `make backend` which can be run individually as well as long as the `bindata` tag is not used (which compiles frontend files into the binary). - -For more involved changes use the `watch-frontend` task to continuously rebuild files when their sources change. The `bindata` tag must be absent. First, build and run the backend: - -```bash -make backend && ./gitea -``` - -With the backend running, open another terminal and run: - -```bash -make watch-frontend -``` - Before committing, make sure the linters pass: ```bash |