Hướng Dẫn Sử Dụng Bash Script Để Clone và Pull Nhiều Source Git Một Lần
Khi làm việc tại các công ty công nghệ, bạn có thể gặp phải tình trạng phải sửa đổi một tính năng trong nguồn mã mới mà bạn chưa từng có kinh nghiệm. Để chạy ứng dụng, bạn thường phải clone nhiều source cùng với rất nhiều thư viện đi kèm. Việc ngồi gõ lệnh mãi sẽ rất nhàm chán và tốn thời gian. Bài viết này sẽ hướng dẫn bạn cách sử dụng Bash script để tự động hóa quy trình clone và checkout các repository Git. Hãy cùng bắt đầu!
Cần Chuẩn Bị Gì Để Chạy Bash Script?
Để thực hiện được các script Bash, bạn cần một môi trường như Git Bash hoặc Terminal trên hệ điều hành Linux hoặc macOS. Nếu bạn đã quen thuộc với các khái niệm cơ bản trong lập trình shell, bạn có thể bỏ qua phần này.
Test Với Hello World
Để bắt đầu, hãy thử viết một script đơn giản. Tạo một file có tên hello.sh
và thêm đoạn mã sau:
bash
#!/bin/bash
echo "Hello World!"
Lưu file lại và cấp quyền thực thi cho nó bằng cách sử dụng lệnh:
bash
chmod +x hello.sh
Sau đó, bạn có thể chạy script như sau:
bash
./hello.sh
Khai Báo Biến và Tham Số
Bash cho phép bạn khai báo biến và sử dụng chúng rất dễ dàng:
bash
name="Noka"
echo $name
Ngoài ra, bạn có thể sử dụng tham số trong script như sau:
bash
echo $1
./hello.sh noka
Sử Dụng Lệnh Điều Kiện
Cú pháp để áp dụng lệnh điều kiện khá đơn giản:
bash
if [ <Điều kiện> ]; then
<Thực hiện nếu điều kiện đúng>
else
<Nếu điều kiện sai>
fi
Lệnh Lặp
Để lặp qua một danh sách, bạn có thể sử dụng cú pháp sau:
bash
for <biến> in <tập hợp>
do
<thực thi trong vòng lặp>
done
Ví dụ kiểm tra danh sách tệp trong thư mục hiện tại:
bash
for item in *
do
echo $item
done
Viết Script Để Clone Nhiều Source
Giờ đây, hãy viết một script để clone nhiều source. Tạo file clone-source.sh
:
bash
#! /usr/bin/bash
level_4=library
git clone http://github.com/demo-code.git
mkdir $level_4
cd $level_4
git clone http://github.com/lib-1.git
git clone http://github.com/lib-2.git
git clone http://github.com/lib-3.git
git clone http://github.com/lib-4.git
git clone http://github.com/lib-5.git
Giải thích mã:
- Clone source chính
demo-code
. - Tạo thư mục
library
. - Chuyển vào thư mục đó và clone các thư viện phụ.
Thêm Màu và Thông Báo
Để làm cho script hấp dẫn hơn, bạn có thể thêm màu sắc và thông báo:
bash
#! /usr/bin/bash
BBlue='\033[1;34m'
level_4=library
echo "Bắt đầu clone source ..."
git clone http://github.com/demo-code.git
echo -e "${BBlue}$(pwd)${Color_Off}"
mkdir $level_4
cd $level_4
echo -e "${BGreen}Tạo thư mục thành công!${Color_Off}"
git clone http://github.com/lib-1.git
echo -e "${BBlue}Clone thành công${Color_Off}"
Checkout Nhánh
Bây giờ, cho phép bạn viết một script để checkout nhánh:
bash
#! /usr/bin/bash
level_4=library
...
echo "Bắt đầu checkout nhánh $1 UDTN"
for folder in *
do
if [[ -d $folder ]]; then
...
fi
done
echo "Hoàn thành checkout nhánh $1 UDTN"
Tạo File POM cho Maven
Nếu bạn đang làm việc với Maven trong Java, bạn có thể tạo file pom.xml
bằng script sau:
bash
#! /usr/bin/bash
...
echo "Tạo file pom cho source"
path_file_pom='pom.xml'
echo '<?xml version="1.0" encoding="UTF-8"?>' > $path_file_pom
...
echo "Kết thúc tạo file pom"
Kết Luận
Bài viết này hướng dẫn bạn cách sử dụng Bash script để tối ưu hóa quy trình phát triển của bạn bằng cách tự động clone và pull nhiều source Git. Hy vọng rằng thông tin hữu ích này sẽ giúp bạn tiết kiệm thời gian và công sức trong công việc. Chúc bạn thành công!
Mình rất mong nhận được sự góp ý từ bạn đọc để bài viết ngày càng hoàn thiện hơn.
source: viblo