PΡΡΡΠΊΠΈΠΉ | English
ΠΠ°ΠΊ ΡΠΎΠ±ΠΈΡΠ°ΡΡ ΠΈ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ:
- ΠΠ·-ΠΏΠΎΠ΄ Ubuntu 18.04, 20.04 (ΡΠ΅Π°Π»ΡΠ½Π°Ρ ΠΈΠ»ΠΈ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π°): ΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠ΅ΠΉ Π½ΠΈΠΆΠ΅.
- ΠΠ·-ΠΏΠΎΠ΄ Windows 10: ΡΠ»Π΅Π΄ΡΡ ΡΡΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π΄Π»Ρ Windows Subsystem for Linux ΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ° VS Code
- ΠΠ·-ΠΏΠΎΠ΄ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ Docker: ΡΠΎΠ±ΡΠ°ΡΡ Π³ΠΎΡΠΎΠ²ΡΠΉ ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Docker ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ, ΠΊΠ°ΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π² Readme ΠΊ ΠΏΡΠΎΠ΅ΠΊΡΡ dreamland_docker.
- ΠΠ·-ΠΏΠΎΠ΄ ΠΎΠ½Π»Π°ΠΉΠ½ ΡΡΠ΅Π΄ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅: Goorm Online IDE ΠΈΠ»ΠΈ ΠΆΠ΅ https://gitpod.io.
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅
- ΠΠ°ΠΏΡΡΠΊ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ
- Π Π°Π±ΠΎΡΠ° Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ
- Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ°
- Wiki ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΡΠ° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΏΠΎ ΡΠ±ΠΎΡΠΊΠ΅ Π±ΡΠ»Π° ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Π° Π½Π° 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 Π²Π²Π΅ΡΡ
Ρ ΡΡΡΠ°Π½ΠΈΡΡ:
ΠΠ°ΡΠ° ΠΊΠΎΠΏΠΈΡ Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠ΅ΡΡ ΠΏΡΡΡ https://github.com/yourname/dreamland_code:
CΠΊΠ»ΠΎΠ½ΠΈΡΡΠΉΡΠ΅ ΠΈΡΡ
ΠΎΠ΄Π½ΠΈΠΊΠΈ ΠΊ ΡΠ΅Π±Π΅ Π½Π° ΠΌΠ°ΡΠΈΠ½Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ URL ΠΈΠ· Clone or download:
Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ
git clone https://github.com/yourname/dreamland_code
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²Π½ΠΎΡΠΈΡΡ ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ³ΠΎΠ΄Π½ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ²ΠΎΠΉ fork, Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ Π²Π»ΠΈΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠΎΠ³Π΄Π° ΠΊΠ°ΠΊΠ°Ρ-ΡΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ Π±ΡΠ΄Π΅Ρ Π³ΠΎΡΠΎΠ²Π° ΠΊ Π²Π»ΠΈΠ²Π°Π½ΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π·Π°ΠΏΡΠΎΡ (pull request), ΠΎΠ± ΡΡΠΎΠΌ Π½ΠΈΠΆΠ΅.
ΠΡΠ°ΡΠΊΠΎ ΠΎΠΏΠΈΡΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΡΡΡΡ Π΄Π»Ρ Π²Π½Π΅ΡΠ΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡΠ²ΠΎΠΉ fork. ΠΡΠ΅ ΡΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git, ΠΎ ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π°Ρ .
- ΠΡΠΎΠ²Π΅ΡΠΈΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈΡΡ ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈΡΡ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ:
git status
ΠΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ:
git diff
- ΠΠΎΠ±Π°Π²ΠΈΡΡ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π² Π±ΡΠ΄ΡΡΠΈΠΉ commit:
git add .
ΠΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ°ΠΉΠ»Ρ Π²ΡΠ±ΠΎΡΠΎΡΠ½ΠΎ:
git add path/to/file
- Π‘ΠΎΠ·Π΄Π°ΡΡ commit ΠΈ ΠΎΠΏΠΈΡΠ°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅. ΠΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ Π΄Π΅Π»Π°ΡΡ ΠΏΠΎΠ½ΡΡΠ½ΡΠ΅ Π΄Π»Ρ ΡΠ΅Ρ , ΠΊΡΠΎ Π±ΡΠ΄Π΅Ρ ΡΠΈΡΠ°ΡΡ ΠΈΡ ΡΠ΅ΡΠ΅Π· ΠΏΠΎΠ»Π³ΠΎΠ΄Π°.
git commit -m "Guys, I did a thing!"
ΠΡΠ»ΠΈ Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ (commit log):
git commit
- ΠΡΠΏΠΈΡ Π½ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π° github:
git push
ΠΠ°ΡΡΠ°Π»ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΡΠ΅ΠΌ, Π½Π°Π΄ ΡΠ΅ΠΌ Π²Ρ ΠΊΠΎΡΠΏΠ΅Π»ΠΈ ΡΠ°ΠΊ Π΄ΠΎΠ»Π³ΠΎ.
ΠΠ° ΡΡΡΠ°Π½ΠΈΡΠ΅ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π±ΡΠ΄Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΎ, Π½Π° ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π²Ρ ΠΎΠΏΠ΅ΡΠ΅ΠΆΠ°Π΅ΡΠ΅ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΠΈ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΠ° Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ° New pull request:
ΠΠ°ΠΆΠ°Π² Π½Π° Π½Π΅Π΅, ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΎΡΠ»ΠΈΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π²ΡΠΌΡ Π²Π΅ΡΠΊΠ°ΠΌΠΈ. ΠΡΠ»ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π°ΡΠ΅ΠΉ ΠΈ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠΉ Π²Π΅ΡΡΠΈΠ΅ΠΉ Π½Π΅ΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ², Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ "Able to merge". ΠΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ pull request, Π½Π°ΠΆΠ°Π² Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ Create:
ΠΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ Π·Π°ΡΠ°ΡΠΊΠΈΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ· Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π² ΡΠ²ΠΎΠΉ, ΡΡΠΎΠ±Ρ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π²Π΅ΡΡΠΈΠ΅ΠΉ. ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°ΠΊΠΎΠΉ:
Π ΡΠ°ΠΌΠΎΠΌ Π½Π°ΡΠ°Π»Π΅, ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π»ΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ΅Π±Π΅ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ 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