Tham Khảo Git

 

Khai Thác và Tạo Dự Án

Để làm việc với Git, bạn phải có kho lưu trữ để Git cất giữ các bản sao bạn lưu lại.

Có hai cách để có một kho: đơn giản nhất là bắt đầu từ một thư mục trên máy tính của bạn, khi bạn muốn bắt đầu một dự án mới hoặc đã có với Git. Cách thư hai là nhân bản từ một kho lưu trữ đã có; cách này thường áp dụng khi bạn làm việc với một vài người khác trong dự án, và việc nhân bản kho lưu trữ Git là để bắt đầu phần việc của riêng bạn cho dự án đó.

docs   book git init khởi tạo kho lưu trữ từ thư mục sẵn có

Bắt đầu từ một thư mục làm việc bất kỳ, bạn dùng lệnh git init để tạo mới một kho lưu trữ Git cho thư mục đó. Ví dụ, ta có thư mục 'konichiwa' với vài tập tin trong đó:

$ cd konnichiwa
$ ls
README   hello.rb

Trong dự án này, chương trình "Hello World" được viết bằng các ngôn ngữ khác nhau, và Ruby là ngôn ngữ đầu tiên. Để bắt đầu quản lý phiên bản với Git, đơn giản ta chạy lệnh git init để tạo kho lưu trữ:

$ git init
Initialized empty Git repository in /opt/konnichiwa/.git/

Bạn sẽ thấy xuất hiện thư mục .git bên trong thư mục 'konichiwa'. Thư mục này là kho lưu trữ Git, nơi mà Git lưu mọi thông tin cần thiết để quản lý các phiên bản của dự án.

$ ls -a
.        ..       .git     README   hello.rb

Bây giờ bạn đã có thể bắt đầu ghi các bản sao dự án với khung kho lưu trữ Git vừa tạo của bạn.

Tóm tắt:, bạn dùng git init để tạo kho lưu trữ Git cho một thư mục đã có. Việc tạo kho này có thể áp dụng cho bất kỳ thư mục nào trên máy tính của bạn.

docs   book git clone nhân bản một kho lưu trữ

Khi làm việc với người khác, hoặc khi muốn có một bản sao để làm vài việc riêng, bạn sẽ nhân bản kho Git của dự án. Lệnh sẽ dùng là git clone [url], trong đó, [url] là địa chỉ của kho.

$ git clone git://github.com/schacon/simplegit.git
Initialized empty Git repository in /private/tmp/simplegit/.git/
remote: Counting objects: 100, done.
remote: Compressing objects: 100% (86/86), done.
remote: Total 100 (delta 35), reused 0 (delta 0)
Receiving objects: 100% (100/100), 9.51 KiB, done.
Resolving deltas: 100% (35/35), done.
$ cd simplegit/
$ ls
README   Rakefile lib

Việc nhân bản một kho sẽ sao chép toàn bộ thông tin lược sử quá trình phát triển dự án về thư mục (ở trên là 'simplegit') trên máy tính của bạn. Trạng thái ban đầu của thư mục đó tương ứng với nhánh phát triển chính (hay nhánh mặc định). Trong thư mục cũng có thư mục con .git là kho lưu trữ Git địa phương (trong khi kho gốc được chỉ ra ở địa chỉ kho trong lệnh nhân bản ở trên).

$ ls -a
.        ..       .git     README   Rakefile lib
$ cd .git
$ ls
HEAD        description info        packed-refs
branches    hooks       logs        refs
config      index       objects

Khi nhân bản, Git mặc định tạo một thư mục cùng tên với kho Git trong phần địa chỉ được cho khi nhân bản (phần tên này nằm sau dấu gạch chéo cuối cùng). Tuy nhiên, nếu bạn muốn kết quả nhân bản nằm trong thư mục khác, bạn có thể chỉ ra ở sau địa chỉ kho (cách với địa chỉ kho ít nhất một khoảng trắng.)

Tóm tắt: bạn dùng git clone để có một bản sao của kho Git trên máy tính, để bạn có thể thực hiện các đóng góp riêng cho dự án.

Cơ Bản Về Bản Sao »