Github 项目结构

Github project structure

我只是在写一些分为 3 部分的项目:API 用 Golang 编写,mongoDB 和 android 客户端。如上所述,我认为创建指令会很好。但是当它不是 golang github 项目的好习惯时:对于这样的结构:

MyProject
├── API
│   ├── scripts
│   └── src
│       └── some_go_file.go
├── DB
│   ├── db_scripts
│   └── data
└── AndroidDirectory

知道这个结构应该是什么样子吗?我应该使用单独的回购还是应该将每个组件留在单独的分支上?

github 上的 Go 项目没有特定的布局,但最好通过在顶层有一个包含一些 go 文件的主包来让它变得可用。请参阅此处的说明,但请记住,如果您向上滚动,它首先是谈论工作区,而不是应用程序。

https://golang.org/doc/code.html#Command

To compile and run a simple program, first choose a package path (we'll use github.com/user/hello) and create a corresponding package directory inside your workspace:

$ mkdir $GOPATH/src/github.com/user/hello Next, create a file named hello.go inside that directory, containing the following Go code.

所以这是我唯一要更改的一点 - 至少将一个 go 文件放在顶层,然后您可以在该文件下面以任何您希望的结构放置其他包(如果您使用 src 目录就可以了)希望大多数包裹)。

为 Android 项目使用单独的 repo,因为它不太可能使用相同的代码(大概它会通过网络使用 API,而不会使用 mongodb 例如直接)。

那剩下你的 api 项目和 mongodb。由于数据库数据和任何脚本都可能与 api 服务器相关,并且会随之发展,因此我将它们作为您的项目的子目录,如您所示。