Git được triển khai bằng Awk, Aho
(github.com/djanderson)-
AhoA Git được triển khai bằng AWK
- AWK có thể làm được nhiều hơn một script một dòng đơn giản.
- Dự án này là một dự án thử nghiệm nhằm khám phá cách Git hoạt động bên trong và các tính năng mới của GNU AWK.
- Nó được tạo ra với chủ đích sẽ không hữu ích ngoài mục đích giải trí và giáo dục.
-
Bắt đầu
- Cần
gawkphiên bản 5.0 trở lên và dùngpigzcho nén zlib. - Sử dụng các chức năng còn lại do GNU coreutils cung cấp.
- Có thể chạy trên hầu hết các hệ thống Linux, nhưng không phải trên BSD hay Mac.
- Có cung cấp ví dụ sử dụng cho các lệnh như khởi tạo, thêm tệp và kiểm tra cấu trúc tệp.
- Cần
-
Đóng góp
- Hoan nghênh mọi đóng góp giúp nâng cao hiểu biết về AWK hoặc Git.
-
Danh sách việc cần làm
- Dự kiến triển khai các tính năng như
init,add/rm,status,commit,reset,branch,switch,config (chỉ đọc),ls-files,cat-file. - Không có kế hoạch bổ sung tính năng mạng, nên sẽ không có
clonehaypush.
- Dự kiến triển khai các tính năng như
Ý kiến của GN⁺
- Dự án này mang đến cho những người tò mò về kỹ thuật một cơ hội thú vị để khám phá cách Git và AWK hoạt động.
- Đây là một dự án thử nghiệm hấp dẫn dành cho các kỹ sư phần mềm mới vào nghề muốn khám phá những khả năng mới của ngôn ngữ lập trình.
- Nó có thể là tài liệu giáo dục hữu ích cho những ai muốn đào sâu hiểu biết về AWK và Git.
1 bình luận
Ý kiến trên Hacker News
Sức hấp dẫn của Awk:
stdout) được pipe.The AWK Programming Language, Second Edition:
Đề xuất cải thiện mã Awk:
letvào GNU Awk để phân biệt tham số của hàm và biến cục bộ, nhưng bị dự án từ chối.Tính hữu dụng của Awk:
Kinh nghiệm làm dự án bằng Awk:
Khả năng mở rộng của Awk:
git clonehoặc push từ các kho lưu trữ ở thư mục khác.Tiềm năng của các tiện ích GNU:
Ứng dụng của cppawk:
#include, và nó mang tính tương đối theo tệp thay vì cần AWKPATH.Các ví dụ đa dạng về việc dùng Awk:
Một sự thật thú vị liên quan đến Awk: