文档章节

Gitlab完美安装【CentOS6.5安装gitlab-6.9.2】

s
 secyaher
发布于 2014/06/16 23:04
字数 2698
阅读 26299
收藏 9
点赞 1
评论 0

参考网址:https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md#installation

安装gitlab版:6.9.2
rpm发行文件名:gitlab-6.9.2_omnibus.1-1.el6.x86_64.rpm

安装步骤代码:
#sudo yum install openssh-server
#sudo yum install postfix # sendmail or exim is also OK
#sudo rpm -i gitlab-6.9.2_omnibus.1-1.el6.x86_64.rpm # this is the .rpm you downloaded
#sudo gitlab-ctl reconfigure
#sudo lokkit -s http -s ssh # open up the firewall for HTTP and SSH requests

ok!
#sudo gitlab-ctl status;   #查看安装后的程序运行情况!输出如下:

run: nginx: (pid 3012) 53s; run: log: (pid 3011) 53s
run: postgresql: (pid 2857) 87s; run: log: (pid 2856) 87s
run: redis: (pid 2759) 98s; run: log: (pid 2758) 98s
run: sidekiq: (pid 2967) 60s; run: log: (pid 2966) 60s
run: unicorn: (pid 2938) 66s; run: log: (pid 2937) 66s

说明安装成功。

通过浏览器访问:http://localhost   或者  http://ip


输入:root/5iveL!fe  登录!
ok,登录成功,首次登录需修改密码,我修改为:12345678,然后重新登录,就可以开始gitlab之旅了。
配置:
sudo mkdir -p /etc/gitlab
sudo touch /etc/gitlab/gitlab.rb
sudo chmod 600 /etc/gitlab/gitlab.rb

Configuring the external URL for GitLab:

向:/etc/gitlab/gitlab.rb 文件中添加:
external_url "http://gitlab.example.com"

更改配置后,执行如下命令(加载配置生效):
sudo gitlab-ctl reconfigure

服务打开、关闭、重启:
# Start all GitLab components
sudo gitlab-ctl start

# Stop all GitLab components
sudo gitlab-ctl stop

# Restart all GitLab components
sudo gitlab-ctl restart
卸载:

# Stop gitlab and remove its supervision process
sudo gitlab-ctl uninstall

# Debian/Ubuntu
sudo dpkg -r gitlab

# Redhat/Centos
sudo rpm -e gitlab

=============================================================================================================================
官方完整安装指南:
=============================================================================================================================
GitLab Omnibus project

This project creates full-stack platform-specific downloadable packages for GitLab. For other installation options please see the GitLab project README.
Documentation version

Please make sure you are viewing the documentation for the version of omnibus-gitlab you are using. In most cases this should be the highest numbered stable branch (example shown below).

Installation

Please download the package and follow the steps below.
Ubuntu 12.04

sudo apt-get install openssh-server
sudo apt-get install postfix # sendmail or exim is also OK
sudo dpkg -i gitlab_x.y.z-omnibus-x.ubuntu.12.04_amd64.deb # this is the .deb you downloaded
sudo gitlab-ctl reconfigure
Debian 7.4

sudo apt-get install openssh-server
sudo apt-get install exim4-daemon-light
sudo dpkg -i gitlab-x.y.z.deb # this is the .deb you downloaded
sudo gitlab-ctl reconfigure
during the exim installation you may follow http://alexatnet.com/references/server-setup-debian/send-only-mail-server-with-exim to ensure you get a secure mailserver
CentOS 6.5

sudo yum install openssh-server
sudo yum install postfix # sendmail or exim is also OK
sudo rpm -i gitlab-x.y.z_omnibus-x.el6.x86_64.rpm # this is the .rpm you downloaded
sudo gitlab-ctl reconfigure
sudo lokkit -s http -s ssh # open up the firewall for HTTP and SSH requests
After installation

Run sudo gitlab-ctl status; the output should look like this:
run: nginx: (pid 972) 7s; run: log: (pid 971) 7s
run: postgresql: (pid 962) 7s; run: log: (pid 959) 7s
run: redis: (pid 964) 7s; run: log: (pid 963) 7s
run: sidekiq: (pid 967) 7s; run: log: (pid 966) 7s
run: unicorn: (pid 961) 7s; run: log: (pid 960) 7s
Your GitLab instance should reachable over HTTP at the IP or hostname of your server. You can login as an admin user with username root and password 5iveL!fe.
Common installation problems

GitLab is unreachable in my browser

Try specifying an external_url in /etc/gitlab/gitlab.rb. Also check your firewall settings; port 80 (HTTP) or 443 (HTTPS) might be closed on your GitLab server.
Reconfigure freezes at ruby_block[supervise_redis_sleep] action run

This happens when Runit has not been installed succesfully during gitlab-ctl reconfigure. The most common cause for a failed Runit installation is installing omnibus-gitlab on an unsupported platform. Solution: double check on the download page whether you downloaded a package for the correct operating system.
TCP ports for GitLab services are already taken

By default, the services in omnibus-gitlab are using the following TCP ports: Redis (6379), PostgreSQL (5432) and Unicorn (8080) listen on 127.0.0.1. Nginx listens on port 80 (HTTP) and/or 443 (HTTPS) on all interfaces.
The ports for Redis, PostgreSQL and Unicorn can be overriden in /etc/gitlab/gitlab.rb as follows:
redis['port'] = 1234
postgresql['port'] = 2345

# due to a bug https://gitlab.com/gitlab-org/omnibus-gitlab/issues/141
# you have to provide the port for gitlab shell as well,
# so the 2 following lines have to point to the same port
unicorn['port'] = 3456
gitlab_rails['internal_api_url'] = 'http://localhost:3456'
For Nginx port changes please see the section on enabling HTTPS below.
Uninstalling omnibus-gitlab

To uninstall omnibus-gitlab, preserving your data (repositories, database, configuration), run the following commands.
# Stop gitlab and remove its supervision process
sudo gitlab-ctl uninstall

# Debian/Ubuntu
sudo dpkg -r gitlab

# Redhat/Centos
sudo rpm -e gitlab
Updating

Instructions for updating your Omnibus installation and upgrading from a manual installation are in the update doc.
Starting and stopping

After omnibus-gitlab is installed and configured, your server will have a Runit service directory (runsvdir) process running that gets started at boot via /etc/inittab or the /etc/init/gitlab-runsvdir.conf Upstart resource.  You should not have to deal with the runsvdir process directly; you can use the gitlab-ctl front-end instead.
You can start, stop or restart GitLab and all of its components with the following commands.
# Start all GitLab components
sudo gitlab-ctl start

# Stop all GitLab components
sudo gitlab-ctl stop

# Restart all GitLab components
sudo gitlab-ctl restart
Note that on a single-core server it may take up to a minute to restart Unicorn and Sidekiq. Your GitLab instance will give a 502 error until Unicorn is up again.
It is also possible to start, stop or restart individual components.
sudo gitlab-ctl restart sidekiq
Unicorn supports zero-downtime reloads. These can be triggered as follows:
sudo gitlab-ctl hup unicorn
Note that you cannot use a Unicorn reload to update the Ruby runtime.
Configuration

Creating the gitlab.rb configuration file

sudo mkdir -p /etc/gitlab
sudo touch /etc/gitlab/gitlab.rb
sudo chmod 600 /etc/gitlab/gitlab.rb
Below several examples are given for settings in /etc/gitlab/gitlab.rb. Please restart each time you made a change.
Configuring the external URL for GitLab

In order for GitLab to display correct repository clone links to your users it needs to know the URL under which it is reached by your users, e.g. http://gitlab.example.com. Add the following line to /etc/gitlab/gitlab.rb:
external_url "http://gitlab.example.com"
Run sudo gitlab-ctl reconfigure for the change to take effect.
Storing Git data in an alternative directory

By default, omnibus-gitlab stores Git repository data in /var/opt/gitlab/git-data. You can change this location by adding the following line to /etc/gitlab/gitlab.rb.
git_data_dir "/mnt/nas/git-data"
Run sudo gitlab-ctl reconfigure for the change to take effect.
Changing the name of the Git user / group

By default, omnibus-gitlab uses the user name git for Git gitlab-shell login, ownership of the Git data itself, and SSH URL generation on the web interface. Similarly, git group is used for group ownership of the Git data.  You can change the user and group by adding the following lines to /etc/gitlab/gitlab.rb.
user['username'] = "gitlab"
user['group'] = "gitlab"
Run sudo gitlab-ctl reconfigure for the change to take effect.
Setting up LDAP sign-in

If you have an LDAP directory service such as Active Directory, you can configure GitLab so that your users can sign in with their LDAP credentials. Add the following to /etc/gitlab/gitlab.rb, edited for your server.
# These settings are documented in more detail at
# https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/gitlab.yml.example#L118
gitlab_rails['ldap_enabled'] = true
gitlab_rails['ldap_host'] = 'hostname of LDAP server'
gitlab_rails['ldap_port'] = 389
gitlab_rails['ldap_uid'] = 'sAMAccountName'
gitlab_rails['ldap_method'] = 'plain' # 'ssl' or 'plain'
gitlab_rails['ldap_bind_dn'] = 'CN=query user,CN=Users,DC=mycorp,DC=com'
gitlab_rails['ldap_password'] = 'query user password'
gitlab_rails['ldap_allow_username_or_email_login'] = true
gitlab_rails['ldap_base'] = 'DC=mycorp,DC=com'

# GitLab Enterprise Edition only
gitlab_rails['ldap_group_base'] = '' # Example: 'OU=groups,DC=mycorp,DC=com'
gitlab_rails['ldap_user_filter'] = '' # Example: '(memberOf=CN=my department,OU=groups,DC=mycorp,DC=com)'
Run sudo gitlab-ctl reconfigure for the LDAP settings to take effect.
Enable HTTPS

By default, omnibus-gitlab runs does not use HTTPS.  If you want to enable HTTPS you can add the following line to /etc/gitlab/gitlab.rb.
external_url "https://gitlab.example.com"
Redirect HTTP requests to HTTPS.
external_url "https://gitlab.example.com"
nginx['redirect_http_to_https'] = true
Change the default port and the ssl certificate locations.
external_url "https://gitlab.example.com:2443"
nginx['ssl_certificate'] = "/etc/gitlab/ssl/gitlab.crt"
nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/gitlab.key"
Create the default ssl certifcate directory and add the files:
sudo mkdir -p /etc/gitlab/ssl && sudo chmod 700 /etc/gitlab/ssl
sudo cp gitlab.example.com.crt gitlab.example.com.key /etc/gitlab/ssl/
# run lokkit to open https on the firewall
sudo lokkit -s https
# if you are using a non standard https port
sudo lokkit -p 2443:tcp
Run sudo gitlab-ctl reconfigure for the change to take effect.
Changing gitlab.yml settings

Some of GitLab's features can be customized through gitlab.yml. If you want to change a gitlab.yml setting with omnibus-gitlab, you need to do so via /etc/gitlab/gitlab.rb. The translation works as follows.
In gitlab.yml, you will find structure like this:
production: &base
  gitlab:
    default_projects_limit: 10
In gitlab.rb, this translates to:
gitlab_rails['gitlab_default_projects_limit'] = 10
What happens here is that we forget about production: &base, and join gitlab: with default_projects_limit: into gitlab_default_projects_limit. Note that not all gitlab.yml settings can be changed via gitlab.rb yet; see the gitlab.yml ERB template.  If you think an attribute is missing please create a merge request on the omnibus-gitlab repository.
Run sudo gitlab-ctl reconfigure for changes in gitlab.rb to take effect.
Do not edit the generated file in /var/opt/gitlab/gitlab-rails/etc/gitlab.yml since it will be overwritten on the next gitlab-ctl reconfigure run.
Specify numeric user and group identifiers

Omnibus-gitlab creates users for GitLab, PostgreSQL and Redis. You can specify the numeric identifiers for these users in /etc/gitlab/gitlab.rb as follows.
user['uid'] = 1234
user['gid'] = 1234
postgresql['uid'] = 1235
postgresql['gid'] = 1235
redis['uid'] = 1236
redis['gid'] = 1236
Storing user attachments on Amazon S3

Instead of using local storage you can also store the user attachments for your GitLab instance on Amazon S3.
This currently only works if you are packaging a forked version of GitLab.
# /etc/gitlab/gitlab.rb
gitlab_rails['aws_enable'] = true
gitlab_rails['aws_access_key_id'] = 'AKIA1111111111111UA'
gitlab_rails['aws_secret_access_key'] = 'secret'
gitlab_rails['aws_bucket'] = 'my_gitlab_bucket'
gitlab_rails['aws_region'] = 'us-east-1'
Sending application email via SMTP

If you would rather send email via an SMTP server instead of via Sendmail, add the following configuration information to /etc/gitlab/gitlab.rb and run gitlab-ctl reconfigure.
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.server"
gitlab_rails['smtp_port'] = 456
gitlab_rails['smtp_user_name'] = "smtp user"
gitlab_rails['smtp_password'] = "smtp password"
gitlab_rails['smtp_domain'] = "example.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
Omniauth (Google, Twitter, GitHub login)

Omniauth configuration is documented on doc.gitlab.com. To effect the necessary changes in gitlab.yml, use the following syntax in /etc/gitlab/gitlab.rb. Note that the providers are specified as an array of Ruby hashes.
gitlab_rails['omniauth_enabled'] = true
gitlab_rails['omniauth_providers'] = [
  {
    "name" => "google_oauth2",
    "app_id" => "YOUR APP ID",
    "app_secret" => "YOUR APP SECRET",
    "args" => { "access_type" => "offline", "approval_prompt" => "" }
  }
]
Backups

Creating an application backup

To create a backup of your repositories and GitLab metadata, run the following command.
sudo gitlab-rake gitlab:backup:create
This will store a tar file in /var/opt/gitlab/backups. The filename will look like 1393513186_gitlab_backup.tar, where 1393513186 is a timestamp.
Scheduling a backup

To schedule a cron job that backs up your repositories and GitLab metadata, use the root user:
sudo su -
crontab -e
There, add the following line to schedule the backup for everyday at 2 AM:
0 2 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create
Restoring an application backup

We will assume that you have installed GitLab from an omnibus package and run sudo gitlab-ctl reconfigure at least once.
First make sure your backup tar file is in /var/opt/gitlab/backups.
sudo cp 1393513186_gitlab_backup.tar /var/opt/gitlab/backups/
Next, restore the backup by running the restore command. You need to specify the timestamp of the backup you are restoring.
# Stop processes that are connected to the database
sudo gitlab-ctl stop unicorn
sudo gitlab-ctl stop sidekiq

# DROP THE CURRENT DATABASE; workaround for a Postgres backup restore bug in GitLab 6.6
sudo -u gitlab-psql /opt/gitlab/embedded/bin/dropdb gitlabhq_production
# This command will overwrite the contents of your GitLab database!
sudo gitlab-rake gitlab:backup:restore BACKUP=1393513186

# Start GitLab
sudo gitlab-ctl start
If there is a GitLab version mismatch between your backup tar file and the installed version of GitLab, the restore command will abort with an error. Install a package for the required version and try again.
Invoking Rake tasks

To invoke a GitLab Rake task, use gitlab-rake. For example:
sudo gitlab-rake gitlab:check
Contrary to with a traditional GitLab installation, there is no need to change the user or the RAILS_ENV environment variable; this is taken care of by the gitlab-rake wrapper script.
Directory structure

Omnibus-gitlab uses four different directories.
/opt/gitlab holds application code for GitLab and its dependencies.
/var/opt/gitlab holds application data and configuration files that gitlab-ctl reconfigure writes to.
/etc/gitlab holds configuration files for omnibus-gitlab. These are the only files that you should ever have to edit manually.
/var/log/gitlab contains all log data generated by components of omnibus-gitlab.
Starting a Rails console session

If you need access to a Rails production console for your GitLab installation you can start one with the command below. Please be warned that it is very easy to inadvertently modify, corrupt or destroy data from the console.
sudo /opt/gitlab/bin/gitlab-rails console
This will only work after you have run gitlab-ctl reconfigure at least once.
Using a MySQL database management server (Enterprise Edition only)

If you want to use MySQL and are using the GitLab Enterprise Edition packages please do the following:
Important note: if you are connecting omnibus-gitlab to an existing GitLab database you should create a backup before attempting this procedure.
Create a user and database for GitLab

First, set up your database server according to the upstream GitLab instructions. If you want to keep using an existing GitLab database you can skip this step.
Configure omnibus-gitlab to connect to it

Next, we add the following settings to /etc/gitlab/gitlab.rb.
# Disable the built-in Postgres
postgresql['enable'] = false

# Fill in the values for database.yml
gitlab_rails['db_adapter'] = 'mysql2'
gitlab_rails['db_encoding'] = 'utf8'
gitlab_rails['db_host'] = '127.0.0.1'
gitlab_rails['db_port'] = '3306'
gitlab_rails['db_username'] = 'git'
gitlab_rails['db_password'] = 'password'
Parameters such as db_adapter correspond to adapter in database.yml; see the upstream GitLab for a MySQL configuration example. We remind you that /etc/gitlab/gitlab.rb should have file permissions 0600 because it contains plaintext passwords.
Run sudo gitlab-ctl reconfigure for the change to take effect.
Seed the database (fresh installs only)

Omnibus-gitlab will not automatically seed your external database. Run the following command to import the schema and create the first admin user:
sudo gitlab-rake gitlab:setup
This is a destructive command; do not run it on an existing database!
Using a non-packaged PostgreSQL database management server

If you do do not want to use the packaged Postgres server you can configure an external one similar to configuring a MySQL server (shown above). Configuring a PostgreSQL server is possible both with GitLab Community Edition and Enterprise Edition packages. Please see the upstream GitLab for a PostgreSQL configuration example.
Building your own package

See the separate build documentation.
Running a custom GitLab version

It is not recommended to make changes to any of the files in /opt/gitlab after installing omnibus-gitlab: they will either conflict with or be overwritten by future updates. If you want to run a custom version of GitLab you can build your own package or use another installation method.
Acknowledgments

 

 

 

© 著作权归作者所有

共有 人打赏支持
s
粉丝 2
博文 466
码字总数 423946
作品 0
centos 6.8下部署gitlab服务器并修改默认端口

安装gitlab 安装依赖环境 安装postfix 添加Gitlab包仓库 安装Gitlab 配置Gitlab和启动 访问gitlab 修改默认的gitlab 相关端口 修改/etc/gitlab/gitlab.rb 修改/var/opt/gitlab/gitlab-rails/...

cwftalus ⋅ 04/20 ⋅ 0

3分钟docker安装Gitlab

1、安装docker,这个没什么好说的.yum install docker 2、添加阿里云加速 首先需要注册一个阿里云的帐号,可能还需要其他一点信息。然后进入容器Hub服务控制台,中间有一个加速器。我们点击它...

算法之名 ⋅ 04/29 ⋅ 0

前端的gitlab的ci初尝试

title: 前端的gitlab的ci尝试 date: 2018-05-22 11:56:22 tags: gitlab ci 本文记录一个前端部署Gitlab的CI。不是在自己的服务器上面搭建的Gitlab。使用的是Gitlab.com的Gitlab的CI,在腾讯云...

小落 ⋅ 05/22 ⋅ 0

Gitlab的部署、应用以及502报错解决-centos

       Gitlab的部署以及应用 GitLab简介 GitLab是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,它也是一个自托管的Git项目仓库,是集代码托管,测试,部署于一体的开源...

技术小疯子 ⋅ 05/30 ⋅ 0

centos7搭建gitlab

一、安装配置依赖项 如想使用Postfix来发送邮件,在安装期间请选择’Internet Site’. 您也可以用sendmai或者 配置SMTP服务 并 使用SMTP发送邮件. 在 Centos7 系统上, 下面的命令将在系统防火...

南北二斗 ⋅ 04/13 ⋅ 0

CentOS7上安装配置GitLab(一)

虽然GitHub已经很好了,但是我们必须联上公网才可以使用并且如果不付费的话,你的代码在网上就是公开的!但是在企业环境中,我们公司的代码不希望被公开并且也不想付费给GitHub,这时怎么办呢...

daibaiyang119 ⋅ 05/29 ⋅ 0

gitlab-runner注册runner

安装gitlab、gitlab-runner见安装 Run the following command Enter your GitLab instance URL Enter the token you obtained to register the Runner Enter a description for the Runner,......

liyuchang ⋅ 04/18 ⋅ 0

centos7.4+GitLab部署

GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。 系统环境准备 建议:内存4G以上不然带不动 #关闭firewalld和NetWorkManager #永久关闭...

归来仍少年 ⋅ 04/28 ⋅ 0

docker入门到实战(7)使用docker快速搭建gitlab私服

下载镜像 docker pull gitlab/gitlab-ce 使用镜像 镜像中有三个目录用于保存gitlab的数据,出于安全考虑,应该使宿主机目录挂载这三个卷做持久化存储。如果出错保证数据不会丢失。 /etc/git...

编程老司机 ⋅ 05/14 ⋅ 0

GitLab 发布 Web IDE,在 Web 端为你提供集成开发体验

开源代码托管服务 GitLab 宣布发布 Web IDE,允许用户无需安装任何程序就能直接在 GitLab 网站上编辑文件。 Web IDE 的想法最初由该公司的一名开发者 Jacob Schatz 提出,Jacob Schatz 注意到...

局长 ⋅ 06/17 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

从 Confluence 5.3 及其早期版本中恢复空间

如果你需要从 Confluence 5.3 及其早期版本中的导出文件恢复到晚于 Confluence 5.3 的 Confluence 中的话。你可以使用临时的 Confluence 空间安装,然后将这个 Confluence 安装实例升级到你现...

honeymose ⋅ 今天 ⋅ 0

用ZBLOG2.3博客写读书笔记网站能创造今日头条的辉煌吗?

最近两年,著名的自媒体网站今日头条可以说是火得一塌糊涂,虽然从目前来看也遇到了一点瓶颈,毕竟发展到了一定的规模,继续增长就更加难了,但如今的今日头条规模和流量已经非常大了。 我们...

原创小博客 ⋅ 今天 ⋅ 0

MyBatis四大核心概念

本文讲解 MyBatis 四大核心概念(SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession、Mapper)。 MyBatis 作为互联网数据库映射工具界的“上古神器”,训有四大“神兽”,谓之:Sql...

waylau ⋅ 今天 ⋅ 0

以太坊java开发包web3j简介

web3j(org.web3j)是Java版本的以太坊JSON RPC接口协议封装实现,如果需要将你的Java应用或安卓应用接入以太坊,或者希望用java开发一个钱包应用,那么用web3j就对了。 web3j的功能相当完整...

汇智网教程 ⋅ 今天 ⋅ 0

2个线程交替打印100以内的数字

重点提示: 线程的本质上只是一个壳子,真正的逻辑其实在“竞态条件”中。 举个例子,比如本题中的打印,那么在竞态条件中,我只需要一个方法即可; 假如我的需求是2个线程,一个+1,一个-1,...

Germmy ⋅ 今天 ⋅ 0

Springboot2 之 Spring Data Redis 实现消息队列——发布/订阅模式

一般来说,消息队列有两种场景,一种是发布者订阅者模式,一种是生产者消费者模式,这里利用redis消息“发布/订阅”来简单实现订阅者模式。 实现之前先过过 redis 发布订阅的一些基础概念和操...

Simonton ⋅ 今天 ⋅ 0

error:Could not find gradle

一.更新Android Studio后打开Project,报如下错误: Error: Could not find com.android.tools.build:gradle:2.2.1. Searched in the following locations: file:/D:/software/android/andro......

Yao--靠自己 ⋅ 昨天 ⋅ 0

Spring boot 项目打包及引入本地jar包

Spring Boot 项目打包以及引入本地Jar包 [TOC] 上篇文章提到 Maven 项目添加本地jar包的三种方式 ,本篇文章记录下在实际项目中的应用。 spring boot 打包方式 我们知道,传统应用可以将程序...

Os_yxguang ⋅ 昨天 ⋅ 0

常见数据结构(二)-树(二叉树,红黑树,B树)

本文介绍数据结构中几种常见的树:二分查找树,2-3树,红黑树,B树 写在前面 本文所有图片均截图自coursera上普林斯顿的课程《Algorithms, Part I》中的Slides 相关命题的证明可参考《算法(第...

浮躁的码农 ⋅ 昨天 ⋅ 0

android -------- 混淆打包报错 (warning - InnerClass ...)

最近做Android混淆打包遇到一些问题,Android Sdutio 3.1 版本打包的 错误如下: Android studio warning - InnerClass annotations are missing corresponding EnclosingMember annotation......

切切歆语 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部