Skip to content

dreamland-mud/dreamland_code

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

DreamLand MUD, руководство Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°

Pусский | English


Stand With Ukraine DreamLand MUD version License Build Status Discord chat

Как ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ ΠΈ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ:

  • Из-ΠΏΠΎΠ΄ Ubuntu 18.04, 20.04 (Ρ€Π΅Π°Π»ΡŒΠ½Π°Ρ ΠΈΠ»ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина): ΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ инструкциСй Π½ΠΈΠΆΠ΅.
  • Из-ΠΏΠΎΠ΄ Windows 10: слСдуя этой инструкции для Windows Subsystem for Linux ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° VS Code
  • Из-ΠΏΠΎΠ΄ окруТСния Docker: ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊ использованию Docker ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, ΠΊΠ°ΠΊ описано Π² Readme ΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ dreamland_docker.
  • Из-ΠΏΠΎΠ΄ ΠΎΠ½Π»Π°ΠΉΠ½ срСд Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅: Goorm Online IDE ΠΈΠ»ΠΈ ΠΆΠ΅ https://gitpod.io.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Π­Ρ‚Π° инструкция ΠΏΠΎ сборкС Π±Ρ‹Π»Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π° Π½Π° Ubuntu 18.04. Π”Ρ€ΠΈΠΌΠ»Π΅Π½Π΄ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ собираСтся ΠΏΠΎΠ΄ gcc 9.3 (ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ вСрсиСй с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ C++17).

Если Π²Π°ΠΌ ΡƒΠ΄Π°Π»ΠΎΡΡŒ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ Ρ‡Π΅ΠΌ-Ρ‚ΠΎ Π΅Ρ‰Π΅, поТалуйста, ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ это руководство.

УстановитС компилятор ΠΈ ΡΠΎΠΏΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΎΡ‚ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… зависит ΠΊΠΎΠ΄ Π΄Ρ€ΠΈΠΌΠ»Π΅Π½Π΄:

sudo apt-get update
sudo apt-get install -y git g++ gcc make automake libtool bison flex gdb telnet db-util libfl-dev bzip2
sudo apt-get install -y libcrypto++-dev libjsoncpp-dev libdb5.3 libdb5.3-dev libdb5.3++ libdb5.3++-dev zlib1g zlib1g-dev libssl-dev
sudo apt-get install -y locales && locale-gen ru_RU.KOI8-R && update-locale

На Ubuntu 18.04, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, понадобится ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΡΠ²Π΅ΠΆΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ компилятора ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π΅ вСрсиСй ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-9 g++-9

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 60 --slave /usr/bin/g++ g++ /usr/bin/g++-9
sudo update-alternatives --config gcc

Π‘ΠΊΠ»ΠΎΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΊ сСбС Π»ΠΈΠ±ΠΎ Π³Π»Π°Π²Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, Π»ΠΈΠ±ΠΎ свою ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ копию (fork) - ΠΎ создании fork Ρ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ Π½ΠΈΠΆΠ΅. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ исходники Π±ΡƒΠ΄ΡƒΡ‚ Π»Π΅ΠΆΠ°Ρ‚ΡŒ Π² /home/dreamland/dreamland_code, Ρ‚ΠΎΠ³Π΄Π°:

mkdir /home/dreamland && cd /home/dreamland
git clone https://github.com/dreamland-mud/dreamland_code.git

Π’ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ с исходниками ΠΏΡ€ΠΎΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ скрипт ΠΈ сборочныС Ρ„Π°ΠΉΠ»Ρ‹, запустив

cd dreamland_code
make -f Makefile.git

Π’ дальнСйшСм эту ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ, Ρ€Π°Π·Π²Π΅ Ρ‡Ρ‚ΠΎ Ссли измСнится configure.ac. ΠŸΡ€ΠΈΡΡ‚ΡƒΠΏΠ°Π΅ΠΌ ΠΊ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈ сборкС. Для удобства всС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΈΠΊΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π·Π°ΡΠΎΡ€ΡΡ‚ΡŒ исходники лишними Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ. Π˜Π½ΡΡ‚Π°Π»ΡΡ†ΠΈΡ Π΄Ρ€ΠΈΠΌΠ»Π΅Π½Π΄ Ρ‚Π°ΠΊΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ runtime, Π³Π΄Π΅ Π½Π° этапС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ создано Π΄Π΅Ρ€Π΅Π²ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² ΠΈ скопированы Π½ΡƒΠΆΠ½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹. Π’ этом руководствС прСдполагаСтся, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΈΠΊΠΈ Π»Π΅ΠΆΠ°Ρ‚ Π² /home/dreamland/objs, Π° инсталляция - Π² /home/dreamland/runtime. Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚Π΅ ΠΏΡƒΡ‚ΠΈ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… согласно своСй ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

mkdir /home/dreamland/objs && cd /home/dreamland/objs
/home/dreamland/dreamland_code/configure --prefix=/home/dreamland/runtime

Для сборки ΠΈ установки запуститС ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

make && make install

Если Ρƒ вас нСсколько процСссоров, Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³ΠΎΠ΄Π½ΠΎ Ρ€Π°ΡΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΡ‚ΡŒ сборку, ΡƒΠΊΠ°Π·Π°Π² количСство ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ², Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

make -j 4 && make install

Π‘ΠΊΠ»ΠΎΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ dreamland_world, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит всС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·ΠΎΠ½Ρ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π΅ΠΏΡƒ dreamland_fenia_public с ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌΠΈ скриптами Π½Π° Ρ„Π΅Π½Π΅.

cd /home/dreamland/runtime
git clone https://github.com/dreamland-mud/dreamland_world.git share/DL
git clone https://github.com/dreamland-mud/dreamland_fenia_public.git share/DL/fenia/public

Π’ΠΎΡ‚ ΠΈ всё, ΠΌΠΈΡ€ Π³ΠΎΡ‚ΠΎΠ² ΠΊ запуску.

cd  /home/dreamland/runtime
./bin/dreamland etc/dreamland.xml &

Π›ΠΎΠ³ΠΈ ΠΏΠΎΠΏΠ°Π΄Π°ΡŽΡ‚ Π² ΠΏΠΎΠ΄ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ var/log Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ runtime. Π€ΠΎΡ€ΠΌΠ°Ρ‚ Ρ„Π°ΠΉΠ»Π° Π»ΠΎΠ³ΠΎΠ² задаСтся Π² etc/dreamland.xml, ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ имя Ρ„Π°ΠΉΠ»Π° - это Π΄Π°Ρ‚Π° ΠΈ врСмя запуска.

<logPattern>var/log/%Y%m%d-%H%M%S.log</logPattern>

Π£Π΄Π°Π»ΠΈΠ² эту строку ΠΈΠ· dreamland.xml, ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Π²Ρ‹Π²ΠΎΠ΄Π° Π»ΠΎΠ³ΠΎΠ² Π² stdout.

Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π² ΠΌΠΈΡ€Π΅ Π΅ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ пСрсонаТ, Π½Π°Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ всСми полномочиями: Kadm, ΠΏΠ°Ρ€ΠΎΠ»ΡŒ KadmKadm. ΠžΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… пСрсонаТСй ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ нСобходимости. ΠœΠΈΡ€ доступСн локально Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠΎΡ€Ρ‚Π°Ρ…:

  • 9001 - "задняя Π΄Π²Π΅Ρ€ΡŒ" для быстрого доступа, минуя архивариуса. ΠŸΡ€ΠΈ Π²Ρ…ΠΎΠ΄Π΅ Ρ‡Π΅Ρ€Π΅Π· этот ΠΏΠΎΡ€Ρ‚ ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ Π² ΠΎΠ΄Π½ΠΎΠΉ строкС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ, Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€: 0 Kadm KadmKadm.
  • 9000 - ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ Π²Ρ…ΠΎΠ΄, Ρ‚ΡƒΡ‚ ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²ΠΎΠ³ΠΎ пСрсонаТа.
  • 1234 - ΠΏΠΎΡ€Ρ‚ web-socket. ΠœΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ mudjs, ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ согласно инструкции ΠΈ ΠΈΠ³Ρ€Π°Ρ‚ΡŒ ΠΈΠ· Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.

НапримСр: telnet localhost 9000 ΠΈΠ»ΠΈ #connect localhost 9000 Π² ΠΌΡƒΠ΄-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅. ВмСсто localhost ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ IP-адрСс Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ установлСн ΠΈ Π·Π°ΠΏΡƒΡ‰Π΅Π½ ΠΌΡƒΠ΄-сСрвСр.


Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ свою ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ копию (fork) рСпозитория, Π½Π°ΠΆΠ°Π² Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Fork Π²Π²Π΅Ρ€Ρ…Ρƒ страницы: fork example

Π’Π°ΡˆΠ° копия Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΡƒΡ‚ΡŒ https://github.com/yourname/dreamland_code: fork example

CΠΊΠ»ΠΎΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ исходники ΠΊ сСбС Π½Π° ΠΌΠ°ΡˆΠΈΠ½Ρƒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ URL ΠΈΠ· Clone or download: clone example Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€

git clone https://github.com/yourname/dreamland_code

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Π½ΠΎΡΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅ ΡƒΠ³ΠΎΠ΄Π½ΠΎ измСнСния Π² свой fork, Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ влияя Π½Π° основной Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Когда какая-Ρ‚ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ Π³ΠΎΡ‚ΠΎΠ²Π° ΠΊ вливанию ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² основной Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ запрос (pull request), ΠΎΠ± этом Π½ΠΈΠΆΠ΅.

ΠšΡ€Π°Ρ‚ΠΊΠΎ опишСм ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ понадобятся для внСсСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² свой fork. ВсС это стандартныС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ git, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… руководствах.

  1. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ измСнились ΠΈΠ»ΠΈ добавились Π² локальной вСрсии:
git status

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ измСнСния ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ:

git diff
  1. Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ всС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ Π² Π±ΡƒΠ΄ΡƒΡ‰ΠΈΠΉ commit:
git add .

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π²Ρ‹Π±ΠΎΡ€ΠΎΡ‡Π½ΠΎ:

git add path/to/file
  1. Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ commit ΠΈ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅. Описания рСкомСндуСтся Π΄Π΅Π»Π°Ρ‚ΡŒ понятныС для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈΡ… Ρ‡Π΅Ρ€Π΅Π· ΠΏΠΎΠ»Π³ΠΎΠ΄Π°.
git commit -m "Guys, I did a thing!"

Если Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ встроСнный Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ для создания описания (commit log):

git commit
  1. Π’Ρ‹ΠΏΠΈΡ…Π½ΡƒΡ‚ΡŒ измСнСния Π½Π° github:
git push

Настало врСмя ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ со всСми Ρ‚Π΅ΠΌ, Π½Π°Π΄ Ρ‡Π΅ΠΌ Π²Ρ‹ ΠΊΠΎΡ€ΠΏΠ΅Π»ΠΈ Ρ‚Π°ΠΊ Π΄ΠΎΠ»Π³ΠΎ. На страницС вашСго рСпозитория Π±ΡƒΠ΄Π΅Ρ‚ описано, Π½Π° сколько ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² Π²Ρ‹ ΠΎΠΏΠ΅Ρ€Π΅ΠΆΠ°Π΅Ρ‚Π΅ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, ΠΈ появится ΠΊΠ½ΠΎΠΏΠΊΠ° для создания запроса New pull request: pull example

НаТав Π½Π° Π½Π΅Π΅, ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ отличия ΠΌΠ΅ΠΆΠ΄Ρƒ двумя Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ. Если ΠΌΠ΅ΠΆΠ΄Ρƒ вашСй ΠΈ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ вСрсиСй Π½Π΅Ρ‚Ρƒ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ², Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ "Able to merge". МоТно ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ pull request, Π½Π°ΠΆΠ°Π² Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Create: pull example

ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈ приходится Π·Π°Ρ‚Π°ΡΠΊΠΈΠ²Π°Ρ‚ΡŒ измСнСния ΠΈΠ· Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ рСпозитория Π² свой, Ρ‡Ρ‚ΠΎΠ±Ρ‹ всСгда Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с послСднСй вСрсиСй. Один ΠΈΠ· способов это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ:

Π’ самом Π½Π°Ρ‡Π°Π»Π΅, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ склонировали Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ сСбС Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ remote ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ upstream, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Π³Π»Π°Π²Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ:

git remote add upstream https://github.com/dreamland-mud/dreamland_code.git 

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° хочСтся ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ ΠΈΠ· Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ рСпозитория, ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΡΡ‚ΡΠ½ΡƒΡ‚ΡŒ измСнСния ΠΈΠ· Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΈ Π½Π°Π»ΠΎΠΆΠΈΡ‚ΡŒ ΠΈΡ… Π½Π° свою Π²Π΅Ρ‚ΠΊΡƒ master:

git fetch upstream
git checkout master
git merge upstream/master
git push

НСсколько Π·Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ Тизнь ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅.

Если Π²Ρ‹ внСсли измСнСния Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ src:

  • Ссли помСнялась Ρ‚ΠΎΠ»ΡŒΠΊΠΎ рСализация (Ρ„Π°ΠΉΠ»Ρ‹ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .cpp), достаточно ΠΏΠ΅Ρ€Π΅ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ src:
cd /home/dreamland/objs/src
make -j 4 && make install
  • Ссли вашС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΆΠ΅ повлияСт ΠΈ Π½Π° ΠΏΠ»Π°Π³ΠΈΠ½Ρ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, помСнялся Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ») - Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ Π²ΠΎΠΎΠ±Ρ‰Π΅ всё.
cd /home/dreamland/objs
make -j 4 && make install

Π—Π°Ρ‚Π΅ΠΌ Π½Π°Π΄ΠΎ ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ dreamland (см. Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΎ запуск).

ΠŸΠ΅Ρ€Π΅ΡΠΎΠ±Π΅Ρ€ΠΈΡ‚Π΅ всС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Π΅ ΠΏΠ»Π°Π³ΠΈΠ½Ρ‹:

cd /home/dreamland/objs/plug-ins/yourplugin
make -j 4 && make install

ΠŸΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ всС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Π΅ ΠΏΠ»Π°Π³ΠΈΠ½Ρ‹ ΠΈΠ·Π½ΡƒΡ‚Ρ€ΠΈ ΠΌΠΈΡ€Π°, Π½Π°Π±Ρ€Π°Π²:

plug reload changed