2013-01-08 16 views
10

Tôi đã cài đặt git cho các cửa sổ và nó hoạt động tốt (ví dụ: sử dụng một trong các giải pháp sau Want to download a Git repository, what do I need (windows machine)?).Cách sử dụng công cụ repo của Google trên MS Windows OS?

I tried to use repo of google nhưng cần gpg và python 2.7. Tôi cài đặt cả hai và nó hoạt động tốt vấn đề duy nhất là kịch bản repo sử dụng một số tính năng định hướng unix như liên kết tượng trưng và fcntl. Có bất kỳ mã thay thế nào của repo cho các cửa sổ không?

Tôi không thể tìm thấy một số giải pháp gốc của google. nếu có một tôi sẽ cố gắng để đẩy nó vào kho lưu trữ google repo git hoặc cố gắng sử dụng nó như là.

+0

FYI, nếu bạn đang cố gắng xây dựng Android trong Windows, [nó không được hỗ trợ] (http://source.android.com/source/initializing.html). –

Trả lời

7

Có, Google repo tập lệnh có thể tương thích với Windows. Làm theo các bước dưới đây.

Nhưng trước đây, như Borealid nói repo không được chuyển trên Windows. repo (forall.py) sử dụng fcntl that is not available on Windows (Unix only).

Tuy nhiên, có Cygwin và các công cụ pythongit riêng của nó.

Nếu git phiên bản từ dự án MSysGit cho bạn hoặc nếu bạn yêu thích giao diện git chỉ dựa trên MSysGit, hãy làm theo các bước sau. Các bước này đảm bảo rằng Cygwin can create native NTFS symlinks. Khác nếu git từ Cygwin là đủ, bạn không phải làm điều đó. Nhưng tốt hơn là thiết lập CYGWIN=winsymlinks:native yêu cầu Cygwin sử dụng các liên kết gốc NTFS thay vì giải pháp Cygwin cũ.

  1. Sử dụng Windows Vista hay muộn (hoặc chuyển sang Linux)
  2. Có quản lý đặc quyền
  3. Dowload và cài đặt Cygwin (32 hoặc 64 bit)
  4. Chọn và cài đặt pythongit (và gpg nếu bạn muốn) từ Cygwin cài đặt
  5. Đặt CYGWIN=winsymlinks:native trong vỏ Cygwin của bạn:

    export CYGWIN=winsymlinks:native 
    mkdir NEW_DIR 
    cd NEW_DIR 
    repo init -u YOUR_URL 
    repo sync -j 7 
    

(xem thêm my other post)

+0

Tôi đã thành công một phần bằng cách sử dụng phương pháp này, tuy nhiên tôi vẫn nhận được dường như ngẫu nhiên '0 [chính] git-remote-https 69956 child_info_fork :: hủy bỏ: C: \ cygwin \ bin \ cygldap-2-4-2.dll : Loaded đến địa chỉ khác nhau: cha mẹ (0x3A0000)! = Con (0x370000) lỗi: không thể fork() cho fetch-pack: tài nguyên tạm thời không có lỗi'. – friederbluemle

+0

Xin chào @friederbluemle. Tôi không hiểu khi nào lỗi của bạn xảy ra. Vui lòng đăng câu hỏi mới, nơi bạn có thể cung cấp thêm chi tiết. Tôi sẽ vui lòng giúp bạn. Sau khi đăng câu hỏi của bạn, chỉ cần thêm nhận xét mới tại đây. Sau đó, tôi sẽ mất thời gian để tái tạo trường hợp của bạn. Và có lẽ ai đó sẽ tìm thấy thủ thuật ... Chúc mừng;) – olibre

+1

@olibre bạn là hiro của tôi: D - cách nhanh chóng để sử dụng repo trên windows :) – ceph3us

4

Hiện tại không có bản gốc repo cho Windows.

Bạn có thể sử dụng máy ảo Linux hoặc khởi động kép hoặc làm việc xung quanh (tương đối nhỏ) do các liên kết tượng trưng không hoạt động trên hệ thống tệp của bạn.

Tùy chọn khác sẽ chỉ sử dụng trực tiếp git thay vì sử dụng repo làm trình bao bọc tiện lợi - repo là công cụ hỗ trợ và không thêm bất kỳ quyền lực đáng kể nào.

7

Một công cụ repo làm việc cho các cửa sổ có sẵn ở đây: https://github.com/esrlabs/git-repo

Nó đòi hỏi Python 3+ và git 1.7.2+

Btw, phiên bản repo gốc được chia đôi có vẻ khá cũ, vì vậy nó có thể không chứa tất cả các chức năng hiện tại.

+0

Readme cho dự án nói rằng Python 3+ chỉ là thử nghiệm: 'Lưu ý : Python 3.x được hỗ trợ trên cơ sở thử nghiệm bởi git-repo ' – skelliam

3

Có cách thay thế cho bất kỳ ai có lựa chọn để làm việc với giải pháp thay thế cho repo, được gọi là gclient.

Xem Google's depot tools:

gclient: Meta-checkout tool managing both subversion and git checkouts. It is similar to repo tool except that it works on Linux, OS X, and Windows and supports both svn and git. On the other hand, gclient doesn't integrate any code review functionality.

+0

Đừng bận tâm trả lời các câu hỏi cũ, ngoài chủ đề. Nếu câu hỏi không đạt tiêu chuẩn ngày nay, và không gây ra bất kỳ tác hại nào, chỉ cần để cho nó được. Tuy nhiên, khi các câu hỏi như vậy thu hút các câu trả lời mới, chúng sẽ được xem xét kỹ lưỡng và có thể bị xóa. – Mogsdad

+3

@Mogsdad Tôi nghĩ câu trả lời này là siêu liên quan. Ngoài ra tôi tin rằng câu hỏi vẫn còn cực kỳ thực tế. – 0x90

+2

Hôm nay tôi đã có cùng một câu hỏi và câu trả lời là siêu liên quan. –

Các vấn đề liên quan