0%

Docker下安装的gogs

git hook 执行时的环境变量

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
HOSTNAME=gogs-gogs1                                                                                                                                              
TERM=xterm
USER=git
GOGS_REPO_CUSTOM_HOOKS_PATH=/data/git/gogs-repositories/user/gitRepo.git/custom_hooks
GOGS_REPO_ID=2
GIT_PUSH_OPTION_COUNT=0
PATH=/usr/libexec/git-core:/usr/libexec/git-core:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PWD=/data/git/gogs-repositories/user/gitRepo.git
GOGS_REPO_OWNER_NAME=user
GOGS_AUTH_USER_NAME=user
GOGS_REPO_NAME=gitRepo
SHLVL=4
HOME=/data/git
SSH_ORIGINAL_COMMAND=1
GOGS_AUTH_USER_ID=1
GOGS_AUTH_USER_EMAIL=xxxx@mail.com
GOGS_CUSTOM=/data/gogs
GOGS_REPO_OWNER_SALT_MD5=94d5344c25db5ceaea76fff71f44dd51
Read more »

docker 运行

1
docker run -d --restart=always --name v2ray -v /path/v2ray:/etc/v2ray -p 7777:1080 v2ray/official v2ray -config=/etc/v2ray/config.json

Read more »

序列类型

6种:列表、元组、字符串、Unicode字符串、buffer对象、xrange对象

列表(list)

操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
"a" + "b" # >>> ab

"ab" * 2 # >>> abab
[None] * 10 # >>> [None, None, None ... None]

"p" in "python" # 检测是否包含 return Ture or False

numbers = [1, 5, 3]
len(numbers) # 3
max(numbers) # 5
min(numbers) # 1

list("Hello") # ["H", "e", "l", "l", "o"]

numbers[1] = 20 # 赋值

del numbers[0] # 删除首个元素

# 分片操作
data[start:end:interval]
# start:起始位置(省略代表开始) end:结束位置(省略代表到结束) interval:步长(不为0,正数从左到有,负数从又到左)
numbers = [1, 2, 3, 4, 5]
numbers[1: 4] = [] # numbers 值为 [1, 5]

numbers.append(2) # numbers 值为 [1, 5, 2]

numbers.count(1) # 统计参数在数组中出现次数

numbers.extend([3, 4, 5]) # numbers 值为[1, 5, 2, 3, 4, 5]

numbers.index(3) # 查找元素位置
numbers.pop(0) # 弹出首个值(修改了原数组)
numbers.reverse() # 反转列表
numbers.sort() # 排序

元组

不可修改

1
2
3
a = (1, 2, 3)
a = (1, )
a = tuple([1, 2, 3]) # a 为 (1, 2, 3)

Skynet 基础笔记

方便自己查询

Config

启动 skynet 服务器需要提供一个配置文件,配置文件的编写可以参考 examples/config ,下面是一个简单的配置文件范例:

1
2
3
4
5
6
7
8
9
10
11
12
13
root = "./"
thread = 8
logger = nil
harbor = 1
address = "127.0.0.1:2526"
master = "127.0.0.1:2013"
start = "main" -- main script
bootstrap = "snlua bootstrap" -- The service for bootstrap
standalone = "0.0.0.0:2013"
luaservice = root.."service/?.lua;"..root.."test/?.lua;"..root.."examples/?.lua"
lualoader = "lualib/loader.lua"
snax = root.."examples/?.lua;"..root.."test/?.lua"
cpath = root.."cservice/?.so"

这个配置文件实际上就是一段 lua 代码,通常,我们以 key = value 的形式对配置项赋值。skynet 在启动时,会读取里面必要的配置项,并将暂时用不到的配置项以字符串形式保存在 skynet 内部的 env 表中。这些配置项可以通过 skynet.getenv 获取。
必要的配置项有:

  • thread 启动多少个工作线程。通常不要将它配置超过你实际拥有的 CPU 核心数。
  • bootstrap skynet 启动的第一个服务以及其启动参数。默认配置为 snlua bootstrap ,即启动一个名为 bootstrap 的 lua 服务。通常指的是 service/bootstrap.lua 这段代码。
  • cpath 用 C 编写的服务模块的位置,通常指 cservice 下那些 .so 文件。如果你的系统的动态库不是以 .so 为后缀,需要做相应的修改。这个路径可以配置多项,以 ; 分割。
    Read more »

总体

  • 游戏管理类
    • 时间步进器
    • 操作类
    • 战斗记录类
  • 战斗包含类
    • 场景
    • 军士
    • 技能(Buff)
Read more »

基础

  • Event
    所有对象都能通过Event管理器抛出事件。Event对象应包含有Class对象本身、所绑定的事件名、以及具体的回掉。
  • EventSet
    管理所有的Event事件,通过Event所监听的Key值以及优先级,去调用Event事件。
  • BaseClass
    此类应为所有类的基类,具有通过EventSet单例绑定绑定以及解绑事件的基础方法。
Read more »

通用

使用git作为svn的版本管理工具

从svn地址获取clone仓库

使用 git clone [svn仓库地址]
ps:如果不需要把svn所有文件修改记录down下来可以添加-r HEAD 参数再最后面,这样可以只clone下来最新的文件

获取更新

使用 git svn fetch

合并远程分支代码到本地分枝

使用 git svn rebase
ps: 其实当使用这个命令的时候git会自动从svn取下当前最新代码并合并到当前本地分支,所以无特殊情况使用此命令即可

提交代码到svn

使用git svn dcommit
此命令会将本地所有提交一一提交到svn仓库,所以提交前最好先整理下本地提交

Read more »