2009-12-28 29 views
8

Tò mò nếu có bất kỳ trình bao bọc API nào cho Git và Subversion cho Java?Java có trình bao bọc API xung quanh subversion và Git không?

Tôi muốn có thể kéo các thay đổi và mã souce (và khác biệt) từ Subversion và Git repos.

Điều này có khả thi không? Bất kỳ API được tạo trước nào?

+2

từ khóa nào bạn đã yêu cầu Google? –

Trả lời

6

Một tìm kiếm google nhanh chóng tìm thấy một số kết quả, mặc dù tôi không thể nói rằng tôi đã sử dụng chúng để tính hữu dụng của họ không được biết

  • JavaGit:. "JavaGit là một Java API cung cấp quyền truy cập vào kho git của chúng tôi mục đích là cung cấp một thư viện với một API dễ sử dụng trực quan cho các nhà phát triển mới với git và các nhà phát triển là những người sử dụng git kỳ cựu. " Theo Câu hỏi thường gặp của họ, nó chỉ sử dụng lệnh git dòng lệnh phía sau hậu trường
  • JGit: Việc triển khai git trong Java
  • svnkit: Triển khai SVN bằng Java.
+1

Thật đáng ngờ khi các nhà phát triển JavaGit tự sử dụng svn để lưu trữ dự án. – shabunc

+0

Tôi có thể xác minh cho svnkit. Tôi đã sử dụng nó để kết nối với repo svn của chúng tôi như là một phần của quá trình triển khai của chúng tôi. Điều duy nhất tôi muốn bình luận là nó hơi lạ để sử dụng. Nhưng một khi bạn tìm ra những gì nó mong đợi nó hoạt động tốt. –

3

jGit là triển khai git trong Java.

SvnClientAdapter sẽ kết nối với SVN bằng nhiều phương pháp khác nhau.

+0

Tôi cần phải móc vào GIT, không thực hiện lại GIT trong java? hoặc là một trình bao bọc API? – mrblah

1

Khám phá svnkit để triển khai phiên bản phụ dựa trên java. Ngoài ra còn có các ràng buộc subversion để java phân phối với subversion tại http://subversion.tigris.org/

jgit có triển khai java cho git.

1

JGit là một triển khai Git, vì vậy nếu bạn đang tìm kiếm một API hướng đến triển khai git gốc, nó sẽ không thực hiện thủ thuật.

JavaGit không hoạt động. Tôi đã thử nó dưới win64 với msysgit 1.8.1 và, ... nó cũng không hoạt động. Có lẽ nó đã được thử nghiệm trong một hệ điều hành khác và phiên bản cũ hơn của git.One có thể đi trước và sửa JavaGit cho mục đích của họ - mã này không phức tạp. Sự trưởng thành của nguồn là không ấn tượng mặc dù - có stubs unimplemented, ngoại trừ nuốt vv Tôi muốn nói đó là một dự án chưa hoàn thành bởi những người khác có ý định tốt.

Có thể một cách khác là lấy lớp lệnh git từ http://plugins.jetbrains.com/plugin/3033 và tách nó khỏi cơ sở hạ tầng intellij. Đó là điều tôi sẽ theo đuổi.

Nó luôn luôn là một lựa chọn, nếu usecases của bạn rất đơn giản, để thực hiện API của riêng bạn, có lẽ tái sử dụng một dòng lệnh trừu tượng thư viện như http://commons.apache.org/proper/commons-cli/

Hope this helps.

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