programming:vcs:git
Khác biệt
Đây là những khác biệt giữa hai phiên bản của trang.
Phiên bản trước của cả hai bênPhiên bản trướcPhiên bản sau | Phiên bản trước | ||
programming:vcs:git [2013/01/20 15:46] – laser | programming:vcs:git [2017/11/01 14:48] (hiện tại) – vuthao | ||
---|---|---|---|
Dòng 33: | Dòng 33: | ||
==== Tương tác với Git trên Eclipse ==== | ==== Tương tác với Git trên Eclipse ==== | ||
Xem chi tiết tại: http:// | Xem chi tiết tại: http:// | ||
- | |||
- | ==== Hướng dẫn cài đặt và sử dụng Aptana tương tác với Github ==== | ||
- | 1) Download và cài đặt Aptana tại địa chỉ http:// | ||
- | |||
- | 2) Cài đặt Aptana theo hướng dẫn Video Dưới (Video hướng dẫn được thực hiện trên Aptana Studio 3.2.2 Microsoft Windows Standalone Version) | ||
- | {{youtube> | ||
- | |||
- | Trong qua trình cài đặt bạn nên thay đổi thư mục cài đặt Aptana về thư mục '' | ||
- | |||
- | Khi chạy Aptana lần đầu tiên chương trình sẽ hỏi thư mục lưu trữ Workspace, Bạn nên di chuyển về thư mục '' | ||
- | |||
- | 3) Sau khi cài đặt xong bạn sửa file '' | ||
- | Thêm đoạn sau vào cuối file | ||
- | < | ||
- | [user] | ||
- | name = Tên của bạn | ||
- | email | ||
- | </ | ||
- | |||
- | 4) Thực hiện việc thêm 1 Project theo video hướng dẫn. | ||
- | |||
- | ==== Hướng dẫn cài đặt và sử dụng Git Bash trên window ==== | ||
- | |||
- | === Cài đặt Git trên window === | ||
- | |||
- | //Chú ý: các hướng dẫn này dành cho phiên bản Git-1.8.0, các phiên bản khác có thể có một số khác biệt.// | ||
- | |||
- | Download git tại địa chỉ http:// | ||
- | |||
- | Để tiến hành cài đặt, nhấp đôi file Git-1.8.0-preview20121022.exe, | ||
- | |||
- | Sau khi cài đặt thành công, trên màn hình nền sẽ có thêm biểu tượng Git Bash, nếu không có, có thể tìm nó trong danh mục chương trình, công cụ tìm kiếm. | ||
- | |||
- | === Làm việc với Git Bash === | ||
- | |||
- | Trước khi làm việc với Git cần cấu hình trước một số thông số ví dụ như tên, email. Đầu tiên nhấp đôi biểu tượng Git Bash để khởi chạy Git Bash, giao diện ban đầu có dạng | ||
- | |||
- | {{ : | ||
- | |||
- | **Cấu hình thông của bạn:** | ||
- | |||
- | Hai thông tin bắt buộc mà bạn luôn luôn phải khai báo đó là tên và địa chỉ email. Mỗi commit của bạn đều sẽ sử dụng thông tin này. Để cấu hình, nhập: | ||
- | |||
- | < | ||
- | $ git config --global user.email phantandung92@gmail.com</ | ||
- | |||
- | Tùy chon --global sửa dụng để xác định giá trị toàn cục, có nghĩa mọi dự án đều sử dụng thông tin đó, đối với một dự án cụ thể, nếu muốn thay đổi thông tin đó ta chỉ cần nhập lại mà không sử dụng --global. Ví dụ: | ||
- | |||
- | < | ||
- | $ git config user.email example@gmail.com</ | ||
- | |||
- | **Xem lại danh sách các cấu hình** | ||
- | |||
- | Để xem lại tất cả các cấu hình hiện tại, nhập: | ||
- | |||
- | < | ||
== Đối với người quản lý == | == Đối với người quản lý == | ||
- | **Hướng dẫn merge và xử lý lỗi conflic Pull Request trên Git** | + | ==== Hướng dẫn merge và xử lý lỗi conflic Pull Request trên Git ==== |
Giả sử chúng ta chưa có gì bây giờ muốn merge các pull request từ các lập trình viên. Hãy tạo một thư mục nào đó và click chuột phải vào thư mục đó chọn Git Bash. Tiếp theo đánh lệnh: | Giả sử chúng ta chưa có gì bây giờ muốn merge các pull request từ các lập trình viên. Hãy tạo một thư mục nào đó và click chuột phải vào thư mục đó chọn Git Bash. Tiếp theo đánh lệnh: | ||
< | < | ||
- | $ git clone https:// | + | $ git clone https:// |
- | + | ||
- | Hai lệnh trên để thiết lập một kho mới và tải kho nukeviet về thư mục vừa tạo. Khi clone xong mặc định sẽ chọn nhánh master, tuy nhiên ta cần làm việc trên nhánh | + | |
- | Tiếp theo để checkout nhánh develop về ta phải trỏ vào thư mục chính của kho code. Dùng lệnh sau: | + | |
- | + | ||
- | < | + | |
- | + | ||
- | Sau đó: | + | |
- | < | + | Hai lệnh trên để thiết lập một kho mới và tải kho nukeviet về thư mục vừa tạo. Khi clone xong mặc định sẽ chọn nhánh |
Bây giờ ta tiếp tục nhập lệnh sau: | Bây giờ ta tiếp tục nhập lệnh sau: | ||
Dòng 153: | Dòng 90: | ||
< | < | ||
+ | ==== Một số lệnh git khác ==== | ||
+ | |||
+ | Để tạm thời bỏ qua những thay đổi trong một tập tin nhất định, không muốn tập tin đó hiển thị trong các file thay đổi sử dụng lệnh: | ||
+ | |||
+ | < | ||
+ | Trong NukeViet Không đưa các file sau lên kho code khi có thay đổi | ||
+ | .htaccess | ||
+ | data/ | ||
+ | data/ | ||
+ | |||
+ | Sau đó, khi muốn tập tin đó hiển thị trong các file thay đổi: | ||
+ | |||
+ | < | ||
+ | |||
+ | |||
+ | Thay đổi commit message cuối | ||
+ | < | ||
+ | |||
+ | Reset project về ID trước đó | ||
+ | < | ||
+ | Sau đó dùng lệnh sau để cập nhật lên kho git | ||
+ | < | ||
+ | |||
+ | fix merge conflicts in Git? | ||
+ | < | ||
+ | |||
+ | Liệt kê tất cả các file thay đổi từ id 3bf2d29 đến id b2d0398 | ||
+ | < | ||
+ | |||
+ | Liệt kê tất cả các file đã xóa từ id 3bf2d29 đến id b2d0398 | ||
+ | < | ||
+ | |||
+ | Zip lại các file thay đổi từ id 3bf2d29 đến id b2d0398 (không có file đã xóa) | ||
+ | < | ||
+ | |||
+ | Ghi chú: Các option của diff-filter | ||
+ | --diff-filter=[ACDMRTUXB*] | ||
+ | |||
+ | A Added | ||
+ | C Copied | ||
+ | D Deleted | ||
+ | M Modified | ||
+ | R Renamed | ||
+ | T have their type (mode) changed | ||
+ | U Unmerged | ||
+ | X Unknown | ||
+ | B have had their pairing Broken | ||
+ | * All-or-none | ||
+ | |||
+ | Xóa 1 nhánh trên kho code | ||
+ | < | ||
+ | |||
+ | Đưa các tag được đánh dầu lên kho code | ||
+ | < | ||
===== Nguồn tham khảo ===== | ===== Nguồn tham khảo ===== | ||
Về Git: | Về Git: | ||
Dòng 161: | Dòng 152: | ||
Về Github: | Về Github: | ||
- | * [[http:// | + | * [[http:// |
* GitHub - Mạng xã hội dành cho lập trình viên (Bài viết trên Blog cộng đồng về Công nghệ thông tin): http:// | * GitHub - Mạng xã hội dành cho lập trình viên (Bài viết trên Blog cộng đồng về Công nghệ thông tin): http:// | ||
* Loạt bài viết về Git trên dotnetviet: | * Loạt bài viết về Git trên dotnetviet: | ||
Dòng 167: | Dòng 158: | ||
* Phần 2: [[http:// | * Phần 2: [[http:// | ||
* Phần 3: [[http:// | * Phần 3: [[http:// | ||
- |
programming/vcs/git.1358671583.txt.gz · Sửa đổi lần cuối: 2013/01/20 15:46 (sửa đổi bên ngoài)