Update documentation for the go module era (#9751)
* Update documentation for the go module era use go env instead of $GOPATH Update instructions to just use git clone Slight update to readme Signed-off-by: Andrew Thornton <art27@cantab.net> * fixup * Apply suggestions from code review Co-Authored-By: Antoine GIRARD <sapk@users.noreply.github.com> Co-Authored-By: Bagas Sanjaya <bagasdotme@gmail.com> * Apply suggestions from code review * Fix GOPATH settings Co-authored-by: Antoine GIRARD <sapk@users.noreply.github.com> Co-authored-by: Bagas Sanjaya <bagasdotme@gmail.com> Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com> Co-authored-by: techknowlogick <techknowlogick@gitea.io>
This commit is contained in:
parent
db42a15fa0
commit
82a979707a
4 changed files with 24 additions and 27 deletions
3
Makefile
3
Makefile
|
@ -5,8 +5,9 @@ export GO111MODULE=off
|
||||||
GO ?= go
|
GO ?= go
|
||||||
SED_INPLACE := sed -i
|
SED_INPLACE := sed -i
|
||||||
SHASUM ?= shasum -a 256
|
SHASUM ?= shasum -a 256
|
||||||
|
GOPATH ?= $(shell $(GO) env GOPATH)
|
||||||
|
|
||||||
export PATH := $($(GO) env GOPATH)/bin:$(PATH)
|
export PATH := $(GOPATH)/bin:$(PATH)
|
||||||
|
|
||||||
ifeq ($(OS), Windows_NT)
|
ifeq ($(OS), Windows_NT)
|
||||||
EXECUTABLE ?= gitea.exe
|
EXECUTABLE ?= gitea.exe
|
||||||
|
|
|
@ -33,6 +33,10 @@ From the root of the source tree, run:
|
||||||
|
|
||||||
TAGS="bindata" make build
|
TAGS="bindata" make build
|
||||||
|
|
||||||
|
or if sqlite support is required:
|
||||||
|
|
||||||
|
TAGS="bindata sqlite sqlite_unlock_notify" make build
|
||||||
|
|
||||||
More info: https://docs.gitea.io/en-us/install-from-source/
|
More info: https://docs.gitea.io/en-us/install-from-source/
|
||||||
|
|
||||||
## Using
|
## Using
|
||||||
|
|
|
@ -50,31 +50,23 @@ is the relevant line - but this may change.)
|
||||||
|
|
||||||
## Downloading and cloning the Gitea source code
|
## Downloading and cloning the Gitea source code
|
||||||
|
|
||||||
Go is quite opinionated about where it expects its source code, and simply
|
The recommended method of obtaining the source code is by using `git clone`.
|
||||||
cloning the Gitea repository to an arbitrary path is likely to lead to
|
|
||||||
problems - the fixing of which is out of scope for this document. Further, some
|
|
||||||
internal packages are referenced using their respective GitHub URL and at
|
|
||||||
present we use `vendor/` directories.
|
|
||||||
|
|
||||||
The recommended method of obtaining the source code is by using the `go get` command:
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
go get -d code.gitea.io/gitea
|
git clone https://github.com/go-gitea/gitea
|
||||||
cd "$GOPATH/src/code.gitea.io/gitea"
|
|
||||||
```
|
```
|
||||||
|
|
||||||
This will clone the Gitea source code to: `"$GOPATH/src/code.gitea.io/gitea"`, or if `$GOPATH`
|
(Since the advent of go modules, it is no longer necessary to build go projects
|
||||||
is not set `"$HOME/go/src/code.gitea.io/gitea"`.
|
from within the `$GOPATH`, hence the `go get` approach is no longer recommended.)
|
||||||
|
|
||||||
## Forking Gitea
|
## Forking Gitea
|
||||||
|
|
||||||
As stated above, you cannot clone Gitea to an arbitrary path. Download the master Gitea source
|
Download the master Gitea source code as above. Then, fork the
|
||||||
code as above. Then, fork the [Gitea repository](https://github.com/go-gitea/gitea) on GitHub,
|
[Gitea repository](https://github.com/go-gitea/gitea) on GitHub,
|
||||||
and either switch the git remote origin for your fork or add your fork as another remote:
|
and either switch the git remote origin for your fork or add your fork as another remote:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Rename original Gitea origin to upstream
|
# Rename original Gitea origin to upstream
|
||||||
cd "$GOPATH/src/code.gitea.io/gitea"
|
|
||||||
git remote rename origin upstream
|
git remote rename origin upstream
|
||||||
git remote add origin "git@github.com:$GITHUB_USERNAME/gitea.git"
|
git remote add origin "git@github.com:$GITHUB_USERNAME/gitea.git"
|
||||||
git fetch --all --prune
|
git fetch --all --prune
|
||||||
|
@ -84,7 +76,6 @@ or:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Add new remote for our fork
|
# Add new remote for our fork
|
||||||
cd "$GOPATH/src/code.gitea.io/gitea"
|
|
||||||
git remote add "$FORK_NAME" "git@github.com:$GITHUB_USERNAME/gitea.git"
|
git remote add "$FORK_NAME" "git@github.com:$GITHUB_USERNAME/gitea.git"
|
||||||
git fetch --all --prune
|
git fetch --all --prune
|
||||||
```
|
```
|
||||||
|
@ -114,7 +105,7 @@ how our continuous integration works.
|
||||||
|
|
||||||
### Formatting, code analysis and spell check
|
### Formatting, code analysis and spell check
|
||||||
|
|
||||||
Our continous integration will reject PRs that are not properly formatted, fail
|
Our continuous integration will reject PRs that are not properly formatted, fail
|
||||||
code analysis or spell check.
|
code analysis or spell check.
|
||||||
|
|
||||||
You should format your code with `go fmt` using:
|
You should format your code with `go fmt` using:
|
||||||
|
@ -237,8 +228,9 @@ have written integration tests; however, these are database dependent.
|
||||||
TAGS="bindata sqlite sqlite_unlock_notify" make build test-sqlite
|
TAGS="bindata sqlite sqlite_unlock_notify" make build test-sqlite
|
||||||
```
|
```
|
||||||
|
|
||||||
will run the integration tests in an sqlite environment. Other database tests
|
will run the integration tests in an sqlite environment. Integration tests
|
||||||
are available but may need adjustment to the local environment.
|
require `git lfs` to be installed. Other database tests are available but
|
||||||
|
may need adjustment to the local environment.
|
||||||
|
|
||||||
Look at
|
Look at
|
||||||
[`integrations/README.md`](https://github.com/go-gitea/gitea/blob/master/integrations/README.md)
|
[`integrations/README.md`](https://github.com/go-gitea/gitea/blob/master/integrations/README.md)
|
||||||
|
@ -257,7 +249,7 @@ Documentation for the website is found in `docs/`. If you change this you
|
||||||
can test your changes to ensure that they pass continuous integration using:
|
can test your changes to ensure that they pass continuous integration using:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cd "$GOPATH/src/code.gitea.io/gitea/docs"
|
# from the docs directory within Gitea
|
||||||
make trans-copy clean build
|
make trans-copy clean build
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
|
@ -38,17 +38,17 @@ Gitea</a>
|
||||||
|
|
||||||
## Download
|
## Download
|
||||||
|
|
||||||
First, retrieve the source code. The easiest way is to use the Go tool. Use the
|
First, we must retrieve the source code. Since, the advent of go modules, the
|
||||||
following commands to fetch the source and switch into the source directory.
|
simplest way of doing this is to use git directly as we no longer have to have
|
||||||
Go is quite opinionated about where it expects its source code, and simply
|
gitea built from within the GOPATH.
|
||||||
cloning the Gitea repository to an arbitrary path is likely to lead to
|
|
||||||
problems - the fixing of which is out of scope for this document.
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
go get -d -u code.gitea.io/gitea
|
git clone https://github.com/go-gitea/gitea
|
||||||
cd "$GOPATH/src/code.gitea.io/gitea"
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
(Previous versions of this document recommended using `go get`. This is
|
||||||
|
no longer necessary.)
|
||||||
|
|
||||||
Decide which version of Gitea to build and install. Currently, there are
|
Decide which version of Gitea to build and install. Currently, there are
|
||||||
multiple options to choose from. The `master` branch represents the current
|
multiple options to choose from. The `master` branch represents the current
|
||||||
development version. To build with master, skip to the [build section](#build).
|
development version. To build with master, skip to the [build section](#build).
|
||||||
|
|
Reference in a new issue