Mục lục
Tạo website bằng cách trộn các kho code từ git
Lưu ý: để sử dụng theo cách này các bạn phải sử dụng được git từ dòng lệnh.
Bước 1: Tạo kho code chính
Khởi tạo kho code để lưu trữ.
Bước 2: Check out kho code chính
checkout kho git
Bước 3: Lấy kho code NukeViet
Sử dụng Terminal chạy lần lượt các câu lện sau để lấy code NukeViet 4 nhánh ổn định tại thời điểm hiện tại.
git remote add nukeviet https://github.com/nukeviet/nukeviet.git git fetch nukeviet git merge nukeviet/nukeviet4.3 --allow-unrelated-histories
Sau này muốn cập nhật các thay đổi từ kho NukeViet chỉ cần chạy các câu lện sau
git fetch nukeviet git merge nukeviet/nukeviet4.3
Lưu ý: nếu muốn lấy nhánh develop thì thay release thành develop
Bước 4: Lấy các module
Ví dụ lấy module shops 4 nhánh ổn định tại thời điểm hiện tại
Sử dụng Terminal chạy lần lượt các câu lện sau:
git remote add shops https://github.com/nukeviet/module-shops.git git fetch shops git merge shops/nukeviet4.3 --allow-unrelated-histories
Lấy các Module khác tưong tự. Trong quá trình trộn code sẽ xảy ra xung đột (Thường là xung đột file .gitigone) chúng ta cần xử lý xung đột. Ví dụ với xung đột file .gitigone chúng ta thay nội dung file này như bước dưới sau đó comit lên
Bước 5: Cài đặt site
Cài đặt site như bình thường
Sau khi cài đặt site, sẽ phát sinh một số file như file config.php
Nên cần sửa lại file .gitignore để đưa các file này lên kho code
Thay thế file .gitignore có nội dung như sau
# Base ignore /.project /.buildpath /.settings /data/cache/ /data/config/diagnostic-*.xml /data/logs/* /data/logs/data_logs/ /data/logs/error_logs/ /data/logs/ip_logs/ /data/logs/ref_logs/ /data/logs/voting_logs/ /data/tmp/ composer.lock #vendor test ignore /vendor/**/demo/ /vendor/**/example/ /vendor/**/examples/ /vendor/**/Examples/ /vendor/**/test/ /vendor/**/tests/ /vendor/**/Tests/ /vendor/**/travis* /vendor/**/.travis.yml /vendor/**/.scrutinizer.yml /vendor/**/phpunit.xml* /vendor/**/phpunit.php #vendor docs ignore /vendor/**/doc/ /vendor/**/docs/ /vendor/**/Documentation/ /vendor/**/readme* /vendor/**/README* /vendor/**/changelog* /vendor/**/CHANGELOG* /vendor/**/FAQ* /vendor/**/CONTRIBUTING* /vendor/**/HISTORY* /vendor/**/UPGRADING* /vendor/**/UPGRADE* /vendor/**/package* /vendor/**/phpunit.php /vendor/**/.gitignore /vendor/**/composer.*
Để tránh xung đột trước khi up lên kho code, ta làm như sau. Chọn file .gitignore chuột phải và chọn Team –> Add to index
Bước 6: Code
Việc code, thêm sửa file như bình thường, sau khi thực hiện xong 1 công việc cần commit để lưu lại lịch sử làm việc
Bước 7: Đưa code lên Site
Sau khi chỉnh sửa xong, tạo thư mục vinades đưa CSDL và các tài liệu vào đó để người khác có thể cài đặt được nhanh.
Bước 8: Lấy các file đã thay đổi đưa lên hosting
Để Zip các file mới sửa, thêm mới giữa hai commit Sử dụng lệnh:
git archive -o update_g09.zip HEAD $(git diff-tree -r --name-only --diff-filter=ACMRT 798d90a90848af8a5f67b525fb3460e81a8f9072 72ff06e8029e6fdfa81db0e25d8d9719d8242006)
Chú ý: Tên các file không có khoảng cách mới dùng được cách này