未验证 提交 131a315f 编写于 作者: L Longda 提交者: GitHub

fixed 494, Add <<Developer Manual>> to README (#495)

上级 528f2057
# How to contribute
OceanBase Database is a community-driven open source project and we welcome all the contributors. Contributions to the OceanBase Database project are expected to adhere to our [Code of Conduct](CODE_OF_CONDUCT.md).
## Before you contribute
Before you contribute, please click the **Sign in with GitHub to agree button** to sign the CLA. You can find an example [here](https://cla-assistant.io/oceanbase/oceanbase).
What is [CLA](https://en.wikipedia.org/wiki/Contributor_License_Agreement)?
## Contribution guide
Please follow these steps to create your Pull Request to this repository.
> **Note:**
>
> This section takes creating a PR to the `master` branch as an example. The steps of creating PRs for other branches are similar.
### Step 1: Fork the repository
1. Visit the project (https://github.com/oceanbase/oceanbase)
2. Click the **Fork** button to establish an online fork.
### Step 2: Clone your fork to local
```bash
# Define your working directory
working_dir=$HOME/Workspace
# Configure GitHub
user={your GitHub profile name}
# Create your clone
mkdir -p $working_dir
cd $working_dir
git clone git@github.com:<your group>/oceanbase.git
# Go to your clone
cd oceanbase
# Add upstream
git remote add upstream git@github.com:<your group>/oceanbase.git
# Set no push for the upstream master
git remote set-url --push upstream no_push
# Confirm your remote setting
git remote -v
```
### Step 3: Create a new branch
1. Get your local master up-to-date with the upstream/master.
```bash
cd $working_dir/oceanbase
git fetch upstream
git checkout master
git rebase upstream/master
```
2. Create a new branch based on the master branch.
```bash
git checkout -b new-branch-name
```
### Step 4: Develop
Edit some file(s) on the `new-branch-name` branch and save your changes.
### Step 5: Commit your changes
```bash
git status # Checks the local status
git add <file> ... # Adds the file(s) you want to commit. If you want to commit all changes, you can directly use `git add.`
git commit -m "commit-message: update the xx"
```
### Step 6: Keep your branch in sync with upstream/master
```bash
# While on your new branch
git fetch upstream
git rebase upstream/master
```
### Step 7: Push your changes to the remote
```bash
git push -u origin new-branch-name # "-u" is used to track the remote branch from the origin
```
### Step 8: Create a pull request
1. Visit your fork at <https://github.com/$user/oceanbase> (replace `$user` with the GitHub account which you performed the fork operation, the repo name is `oceanbase` by default and you may want to modify it).
2. Click the `Compare & pull request` button next to your `new-branch-name` branch to create your PR.
......@@ -51,56 +51,19 @@ OceanBase 数据库使用 [MulanPubL - 2.0](https://license.coscl.org.cn/MulanPu
| Ubuntu | 16.04, 18.04, 20.04 | x86_64 | ✅ | ✅ | ✅ | ✅ |
| UOS | 20 | x86_64 | ✅ | ✅ | ✅ | ✅ |
## 如何构建
### 前提条件
## OceanBase开发者手册
在构建前您需要确认您的机器已经安装必要的软件:
1. [如何编译OceanBase源码](wiki/how_to_build)
2. [如何设置IDE开发环境](wiki/how_to_setup_ide)
3. [如何成为OceanBase Contributor](wiki/how_to_contribute)
4. [如何修改OceanBase文档](wiki/how_to_modify_docs)
5. [如何debug OceanBase](wiki/how_to_debug)
6. [如何运行测试](wiki/how_to_test)
7. [如何修bug](wiki/fix_bug)
#### Fedora 系列 (包括 CentOS,Fedora,OpenAnolis,RedHat, UOS等)
```sh
yum install git wget rpm* cpio make glibc-devel glibc-headers binutils
```
#### Debian 系列 (包括 Debian,ubuntu 等)
```sh
apt-get install git wget rpm rpm2cpio cpio make build-essential binutils
```
#### SUSE 系列 (包括 SUSE,openSUSE 等)
```sh
zypper install git wget rpm cpio make glibc-devel binutils
```
### debug 模式
```bash
bash build.sh debug --init --make
```
### release 模式
```bash
bash build.sh release --init --make
```
### 构建 RPM 软件包
```bash
bash build.sh rpm --init && cd build_rpm && make -j16 rpm
```
详细信息,参考 [使用源码构建 OceanBase 数据库](https://open.oceanbase.com/docs/community/oceanbase-database/V3.1.0/get-the-oceanbase-database-by-using-source-code)
## 如何贡献
我们十分欢迎并感谢您为我们贡献。以下是您参与贡献的几种方式:
- 向我们提 [issue](https://github.com/oceanbase/oceanbase/issues)
- 提交 PR,详情参见 [如何贡献](CONTRIBUTING.md)
## 获取帮助
......@@ -109,3 +72,7 @@ bash build.sh rpm --init && cd build_rpm && make -j16 rpm
- [GitHub Issue](https://github.com/oceanbase/oceanbase/issues)
- [官方网站](https://open.oceanbase.com/)
- 知识问答(Coming soon)
## Roadmap
请参考[Roadmap](wiki/roadmap).
\ No newline at end of file
......@@ -57,54 +57,18 @@ OceanBase Database is under [MulanPubL - 2.0](https://license.coscl.org.cn/Mulan
| Ubuntu | 16.04, 18.04, 20.04 | x86_64 | ✅ | ✅ | ✅ | ✅ |
| UOS | 20 | x86_64 | ✅ | ✅ | ✅ | ✅ |
## How to build
## Developer Manual
### Preparation
1. [How to build](wiki/how_to_build)
2. [How to setup IDE](wiki/how_to_setup_ide)
3. [How to contribute](wiki/how_to_contribute)
4. [How to modify document](wiki/how_to_modify_docs)
5. [How to debug OceanBase](wiki/how_to_debug)
6. [How to run test](wiki/how_to_test)
7. [How to fix one_bug](wiki/how_to_fix_bug)
Before building, you need to confirm that your device has installed the necessary software.
#### Fedora based (, including CentOS, Fedora, OpenAnolis, RedHat, UOS, etc.)
```sh
yum install git wget rpm* cpio make glibc-devel glibc-headers binutils
```
#### Debian based (, including Debian, Ubuntu, etc.)
```sh
apt-get install git wget rpm rpm2cpio cpio make build-essential binutils
```
#### SUSE based (, including SUSE, openSUSE, etc.)
```sh
zypper install git wget rpm cpio make glibc-devel binutils
```
### debug mode
```bash
bash build.sh debug --init --make
```
### release mode
```bash
bash build.sh release --init --make
```
### RPM packages
```bash
bash build.sh rpm --init && cd build_rpm && make -j16 rpm
```
## Contributing
Contributions are warmly welcomed and greatly appreciated. Here are a few ways you can contribute:
- Raise us an [issue](https://github.com/oceanbase/oceanbase/issues).
- Submit Pull Requests. For details, see [How to contribute](CONTRIBUTING.md).
## Support
......@@ -113,3 +77,7 @@ In case you have any problems when using OceanBase Database, welcome reach out f
- [GitHub Issue](https://github.com/oceanbase/oceanbase/issues)
- [Official Website](https://open.oceanbase.com/)
- Knowledge base [Coming soon]
## Roadmap
Please refer to [Roadmap](wiki/roadmap) for details.
\ No newline at end of file
......@@ -44,4 +44,4 @@ Note the following rules when editing documents:
## Contribute
See [How to contribute](../CONTRIBUTING.md).
See [How to contribute](wiki/how_to_contribute)
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册