Kiểm soát phiên bản và R cho nhà phân tích dữ liệu solo


155

Nhiều nhà phân tích dữ liệu mà tôi tôn trọng sử dụng kiểm soát phiên bản. Ví dụ:

Tuy nhiên, tôi đang đánh giá xem việc áp dụng một hệ thống kiểm soát phiên bản như git có đáng hay không.

Tổng quan ngắn gọn: Tôi là một nhà khoa học xã hội sử dụng R để phân tích dữ liệu cho các ấn phẩm nghiên cứu. Tôi hiện không sản xuất các gói R. Mã R của tôi cho một dự án thường bao gồm vài nghìn dòng mã để nhập dữ liệu, làm sạch, thao tác, phân tích và tạo đầu ra. Các ấn phẩm thường được viết bằng LaTeX.

Liên quan đến kiểm soát phiên bản, có rất nhiều lợi ích mà tôi đã đọc, nhưng chúng dường như ít liên quan đến nhà phân tích dữ liệu solo.

  • Sao lưu: Tôi đã có một hệ thống sao lưu.
  • Ngã ba và tua lại: Tôi chưa bao giờ cảm thấy cần phải làm điều này, nhưng tôi có thể thấy nó hữu ích như thế nào (ví dụ: bạn đang chuẩn bị nhiều bài báo dựa trên cùng một tập dữ liệu; bạn đang chuẩn bị báo cáo được cập nhật hàng tháng, v.v. )
  • Cộng tác: Hầu hết thời gian tôi tự phân tích dữ liệu, do đó, tôi sẽ không nhận được lợi ích cộng tác của kiểm soát phiên bản.

Ngoài ra còn có một số chi phí tiềm năng liên quan đến việc áp dụng kiểm soát phiên bản:

  • Thời gian để đánh giá và tìm hiểu một hệ thống kiểm soát phiên bản
  • Sự gia tăng phức tạp có thể có trên hệ thống quản lý tệp hiện tại của tôi

Tuy nhiên, tôi vẫn có cảm giác mình đang thiếu thứ gì đó. Các hướng dẫn chung về kiểm soát phiên bản dường như được đề cập nhiều hơn đối với các nhà khoa học máy tính hơn là các nhà phân tích dữ liệu.

Do đó, cụ thể liên quan đến các nhà phân tích dữ liệu trong các trường hợp tương tự như các trường hợp được liệt kê ở trên:

  1. Là kiểm soát phiên bản có giá trị nỗ lực?
  2. Những ưu và nhược điểm chính của việc áp dụng kiểm soát phiên bản là gì?
  3. Chiến lược tốt để bắt đầu với kiểm soát phiên bản để phân tích dữ liệu với R (ví dụ: ví dụ, ý tưởng quy trình làm việc, phần mềm, liên kết đến hướng dẫn) là gì?

2
Bạn đã đọc cái này chưa: stackoverflow.com/questions/360887/ Kẻ
Marek

@Marek Bài đăng đó rất hữu ích. Cảm ơn nhiều. Tôi vẫn muốn biết những vấn đề cụ thể, nếu có, liên quan đến phân tích dữ liệu, R và nghiên cứu bằng văn bản.
Jeromy Anglim

Câu trả lời cho câu hỏi đầu tiên của bạn là "có", tất nhiên. Nhưng loại / kích thước của dữ liệu bạn thường xử lý. Hầu hết các hệ thống CVS có một thời gian khó lưu trữ dữ liệu nhị phân.
Eduardo Leoni

3
Bạn cũng có thể muốn xem xét điều này: stackoverflow.com/questions/2286831/ cấp
Shane

@Eduardo Tôi làm việc với một hỗn hợp các văn bản đơn giản (ví dụ: được phân tách bằng tab, chiều rộng cố định) và tệp nhị phân (cơ sở dữ liệu, SPSS, Excel, v.v.). Dữ liệu khác nhau: Ví dụ điển hình 100 hàng x 500 cột thành 10.000 x 20 đến 2.000.000 x 20.
Jeromy Anglim

Câu trả lời:


89

Tôi cảm thấy câu trả lời cho câu hỏi của bạn là rất có - lợi ích của việc quản lý tệp của bạn với hệ thống kiểm soát phiên bản vượt xa chi phí thực hiện một hệ thống như vậy.

Tôi sẽ cố gắng trả lời chi tiết một số điểm bạn nêu ra:

  • Sao lưu: Tôi đã có một hệ thống sao lưu.

Có, và tôi cũng vậy. Tuy nhiên, có một số câu hỏi cần xem xét về sự phù hợp của việc dựa vào hệ thống sao lưu mục đích chung để theo dõi đầy đủ các tệp quan trọng và hoạt động liên quan đến công việc của bạn. Về mặt hiệu suất:

  • Ở khoảng thời gian nào hệ thống sao lưu của bạn chụp ảnh nhanh?
  • Mất bao lâu để xây dựng một ảnh chụp nhanh?
  • Nó có phải hình ảnh toàn bộ ổ cứng của bạn khi chụp ảnh nhanh không, hoặc có thể dễ dàng yêu cầu sao lưu hai tệp vừa nhận được các bản cập nhật quan trọng?
  • Hệ thống sao lưu của bạn có thể hiển thị cho bạn, với độ chính xác chính xác, điều gì đã thay đổi trong tệp văn bản của bạn từ bản sao lưu này sang bản sao lưu tiếp theo không?

Và quan trọng nhất:

  • Có bao nhiêu vị trí sao lưu được lưu trong? Có phải chúng ở cùng một vị trí vật lý với máy tính của bạn không?
  • Thật dễ dàng để khôi phục một phiên bản nhất định của một tệp từ hệ thống sao lưu của bạn?

Ví dụ: có máy Mac và sử dụng Time Machine để sao lưu vào ổ cứng khác trong máy tính của tôi. Time Machine rất tốt cho việc khôi phục tệp lẻ hoặc khôi phục hệ thống của tôi nếu mọi thứ bị rối tung. Tuy nhiên, đơn giản là nó không có những gì cần thiết để được tin tưởng với công việc quan trọng của tôi:

  • Khi sao lưu, Time Machine phải ghi hình ảnh toàn bộ ổ cứng cần một lượng thời gian đáng kể. Nếu tôi tiếp tục làm việc, không có gì đảm bảo rằng tập tin của tôi sẽ được ghi lại ở trạng thái như khi tôi bắt đầu sao lưu. Tôi cũng có thể đạt đến một điểm khác mà tôi muốn lưu trước khi bản sao lưu đầu tiên kết thúc.

  • Ổ cứng lưu trữ các bản sao lưu Time Machine của tôi được đặt trong máy của tôi - điều này làm cho dữ liệu của tôi dễ bị mất cắp, hỏa hoạn và các thảm họa khác.

Với một hệ thống kiểm soát phiên bản như Git, tôi có thể bắt đầu sao lưu các tệp cụ thể mà không cần phải yêu cầu lưu trong trình soạn thảo văn bản - và tệp được tạo ảnh và lưu trữ ngay lập tức. Hơn nữa, Git được phân phối để mỗi máy tính mà tôi làm việc có một bản sao đầy đủ của kho lưu trữ.

Điều này có nghĩa là công việc của tôi được nhân đôi trên bốn máy tính khác nhau - không có hành động nào của thần có thể phá hủy các tệp và dữ liệu của tôi, tại thời điểm đó tôi có lẽ sẽ không quan tâm quá nhiều.

  • Ngã ba và tua lại: Tôi chưa bao giờ cảm thấy cần phải làm điều này, nhưng tôi có thể thấy nó hữu ích như thế nào (ví dụ: bạn đang chuẩn bị nhiều bài báo dựa trên cùng một tập dữ liệu; bạn đang chuẩn bị báo cáo được cập nhật hàng tháng, v.v. )

Là một nghệ sĩ độc tấu, tôi cũng không ngã ba. Tuy nhiên, thời gian tôi đã tiết kiệm được bằng cách có tùy chọn tua lại đã hoàn trả một lần tiền đầu tư của tôi vào việc học một hệ thống kiểm soát phiên bản nhiều lần. Bạn nói rằng bạn chưa bao giờ cảm thấy cần phải làm điều này - nhưng việc tua lại bất kỳ tệp nào trong hệ thống sao lưu hiện tại của bạn thực sự là một lựa chọn không đau đớn, khả thi?

Đôi khi báo cáo chỉ nhìn tốt hơn 45 phút, một giờ hoặc hai ngày trước.

  • Cộng tác: Hầu hết thời gian tôi tự phân tích dữ liệu, do đó, tôi sẽ không nhận được lợi ích cộng tác của kiểm soát phiên bản.

Có, nhưng bạn sẽ học được một công cụ có thể chứng minh là không thể thiếu nếu cuối cùng bạn hợp tác với những người khác trong một dự án.

  • Thời gian để đánh giá và tìm hiểu một hệ thống kiểm soát phiên bản

Đừng lo lắng quá nhiều về điều này. Các hệ thống kiểm soát phiên bản giống như ngôn ngữ lập trình - chúng có một vài khái niệm chính cần phải học và phần còn lại chỉ là đường cú pháp. Về cơ bản, hệ thống kiểm soát phiên bản đầu tiên bạn học sẽ yêu cầu đầu tư nhiều thời gian nhất để chuyển đổi sang hệ thống khác chỉ cần học cách hệ thống mới thể hiện các khái niệm chính.

Chọn một hệ thống phổ biến và đi cho nó!

  • Sự gia tăng phức tạp có thể có trên hệ thống quản lý tệp hiện tại của tôi

Bạn có một thư mục, Projectscó chứa tất cả các thư mục và tệp liên quan đến hoạt động phân tích dữ liệu của bạn không? Nếu vậy thì việc tát kiểm soát phiên bản trên nó sẽ làm tăng độ phức tạp của hệ thống tệp của bạn một cách chính xác 0. Nếu các dự án của bạn tập trung vào máy tính của bạn - thì bạn nên tập trung chúng trước khi áp dụng kiểm soát phiên bản và điều này sẽ làm giảm sự phức tạp của việc quản lý các tệp của bạn - đó là lý do tại sao chúng ta có một Documentsthư mục.

  1. Là kiểm soát phiên bản có giá trị nỗ lực?

Đúng! Nó cung cấp cho bạn một nút hoàn tác lớn và cho phép bạn dễ dàng chuyển công việc từ máy này sang máy khác mà không phải lo lắng về những việc như mất ổ USB.

2 Những ưu và nhược điểm chính của việc áp dụng kiểm soát phiên bản là gì?

Điều duy nhất tôi có thể nghĩ đến là tăng nhẹ kích thước tệp - nhưng các hệ thống kiểm soát phiên bản hiện đại có thể làm những điều hoàn toàn tuyệt vời với tính năng nén và lưu chọn lọc, vì vậy đây gần như là một điểm cần thiết.

3 Chiến lược tốt để bắt đầu với kiểm soát phiên bản để phân tích dữ liệu với R (ví dụ: ví dụ, ý tưởng quy trình làm việc, phần mềm, liên kết đến hướng dẫn) là gì?

Giữ các tệp tạo dữ liệu hoặc báo cáo dưới sự kiểm soát phiên bản, hãy chọn lọc. Nếu bạn đang sử dụng một cái gì đó như Sweave, lưu trữ các .Rnwtệp của bạn chứ không phải các .textệp được sản xuất từ ​​chúng. Lưu trữ dữ liệu thô nếu nó sẽ là một nỗi đau để có được lại. Nếu có thể, hãy viết và lưu trữ một tập lệnh lấy dữ liệu của bạn và một tập lệnh khác để dọn dẹp hoặc sửa đổi nó thay vì lưu trữ các thay đổi đối với dữ liệu thô.

Đối với việc tìm hiểu một hệ thống kiểm soát phiên bản, tôi đánh giá cao Git và hướng dẫn này cho nó.

Các trang web này cũng có một số mẹo và thủ thuật hay liên quan đến việc thực hiện các hành động cụ thể với Git:


1
+1 cho câu trả lời "Có thể tăng độ phức tạp so với hệ thống quản lý tệp hiện tại của tôi". Kiểm soát phiên bản có khả năng làm giảm mức độ phức tạp nếu các mục được đặt trong kiểm soát phiên bản cùng với việc đưa ra mức kiểm soát chi tiết đối với các điểm chụp nhanh trong quá trình sao lưu của bạn (Bạn cũng đưa ra một số mô tả rất hữu ích trong việc khôi phục không phải theo ngày mà bằng tính năng hoặc thay đổi ).
Christopher Hackett

23

Tôi đã làm việc chín năm trong một cửa hàng phân tích và giới thiệu ý tưởng kiểm soát phiên bản cho các dự án phân tích của chúng tôi cho cửa hàng đó. Rõ ràng tôi là một người tin tưởng lớn vào việc kiểm soát phiên bản. Tôi sẽ làm cho các điểm sau, tuy nhiên.

  1. Kiểm soát phiên bản có thể không phù hợp nếu bạn đang phân tích để sử dụng có thể tại tòa án. Nghe có vẻ như điều này không đúng với bạn, nhưng nó sẽ khiến khách hàng của chúng tôi rất lo lắng khi biết rằng mọi phiên bản của mọi kịch bản mà chúng tôi từng sản xuất đều có khả năng khám phá được. Chúng tôi đã sử dụng kiểm soát phiên bản cho các mô-đun mã được sử dụng lại trong nhiều lần tham gia, nhưng không sử dụng kiểm soát phiên bản cho mã cụ thể tương tác, vì lý do đó.
  2. Chúng tôi thấy lợi ích lớn nhất đối với việc kiểm soát phiên bản đến từ việc lưu trữ các mô-đun mã đóng hộp được sử dụng lại trên nhiều dự án. Ví dụ: bạn có thể có một cách yêu thích cụ thể để xử lý các trích xuất Điều tra dân số nhất định. Tổ chức mã này vào một thư mục và đặt nó vào VCS của bạn. Sau đó, bạn có thể kiểm tra nó vào từng dự án mới mỗi khi bạn cần. Thậm chí có thể hữu ích khi tạo các nhánh cụ thể của mã nhất định cho dự án nhất định, nếu bạn đang xử lý đặc biệt một bộ dữ liệu chung cụ thể cho dự án đó. Sau đó, khi bạn hoàn thành dự án đó, hãy quyết định số lượng mã đặc biệt của bạn sẽ hợp nhất trở lại nhánh chính.
  3. Đừng đưa dữ liệu đã xử lý vào kiểm soát phiên bản. Chỉ mã. Mục tiêu của chúng tôi là luôn có một bộ tập lệnh hoàn chỉnh để có thể xóa tất cả dữ liệu được xử lý nội bộ, nhấn nút và có mọi số cho báo cáo được tạo lại từ đầu. Đó là cách duy nhất để chắc chắn rằng bạn không có những con bọ cũ sống bí ẩn trong dữ liệu của mình.
  4. Để đảm bảo rằng kết quả của bạn thực sự hoàn toàn có thể lặp lại, chỉ cần giữ mã của bạn trong một VCS là không đủ. Điều quan trọng là phải theo dõi cẩn thận phiên bản nào của mô-đun đã được sử dụng để tạo bất kỳ phân phối cụ thể nào.
  5. Về phần mềm, tôi đã có may mắn với Subversion. Nó rất dễ dàng để thiết lập và quản lý. Tôi nhận ra sự hấp dẫn của các VCS phân tán mới, như git và đồng bóng, nhưng tôi không chắc có bất kỳ lợi thế mạnh nào nếu bạn tự làm việc. Mặt khác, tôi cũng không biết có bất kỳ tiêu cực nào khi sử dụng chúng - tôi chỉ không làm việc với họ trong môi trường phân tích.

18

Để hoàn thiện, tôi nghĩ tôi sẽ cung cấp bản cập nhật về việc áp dụng kiểm soát phiên bản.

Tôi đã tìm thấy kiểm soát phiên bản cho các dự án phân tích dữ liệu solo là rất hữu ích.

Tôi đã sử dụng git làm công cụ kiểm soát phiên bản chính của mình. Lần đầu tiên tôi bắt đầu sử dụng Egit trong Eclipse với StatET. Bây giờ tôi thường chỉ sử dụng giao diện dòng lệnh, mặc dù tích hợp với RStudio khá tốt.

Tôi đã viết về trải nghiệm của mình khi được thiết lập với kiểm soát phiên bản từ góc độ của các dự án phân tích dữ liệu.

Như đã nêu trong bài đăng, tôi thấy việc áp dụng kiểm soát phiên bản có nhiều lợi ích thứ yếu trong cách tôi nghĩ về các dự án phân tích dữ liệu bao gồm làm rõ:

  • sự khác biệt giữa các tập tin nguồn và dẫn xuất
  • bản chất của sự phụ thuộc:
    • sự phụ thuộc giữa các yếu tố của mã
    • phụ thuộc giữa các tập tin trong một dự án
    • và phụ thuộc với các tệp và chương trình bên ngoài kho lưu trữ
  • bản chất của một kho lưu trữ và cách phân chia các kho lưu trữ
  • bản chất của cam kết và ghi lại các thay đổi và các mốc quan trọng của dự án

2
Tôi cũng bắt đầu với giao diện dòng lệnh (và thật tốt khi biết) nhưng tôi cũng đã chuyển sang chủ yếu sử dụng RStudio cho nhu cầu R / git của mình. Nó cung cấp hầu hết mọi thứ tôi muốn nhưng đôi khi tôi cần mở một thiết bị đầu cuối để thực hiện một số thứ không được tích hợp trực tiếp vào giao diện.
Dason

17

Tôi thực hiện nghiên cứu kinh tế bằng R và LaTeX, và tôi luôn đặt công việc của mình dưới sự kiểm soát phiên bản. Nó giống như có hoàn tác không giới hạn. Hãy dùng thử Bazaar, đây là một trong những cách đơn giản nhất để tìm hiểu và sử dụng và nếu bạn ở trên Windows, nó có giao diện người dùng đồ họa (TortoiseBZR).

Vâng, có những lợi ích bổ sung cho việc kiểm soát phiên bản khi làm việc với những người khác, nhưng ngay cả trong các dự án solo, nó cũng rất có ý nghĩa.


9

Ngay bây giờ, bạn có thể nghĩ rằng công việc của bạn là phát triển mã sẽ làm những gì bạn muốn nó làm. Sau khi bạn chấp nhận sử dụng hệ thống kiểm soát sửa đổi, bạn sẽ nghĩ về công việc của mình như viết ra di sản của bạn trong kho lưu trữ và thực hiện các thay đổi gia tăng tuyệt vời cho nó. Nó cảm thấy tốt hơn.


7

Tôi vẫn sẽ đề nghị kiểm soát phiên bản cho một hành động solo như bạn bởi vì có một mạng lưới an toàn để bắt lỗi có thể là một điều tuyệt vời để có.

Tôi đã làm việc như một nhà phát triển Java solo và tôi vẫn sử dụng kiểm soát nguồn. Nếu tôi kiểm tra mọi thứ liên tục, tôi không thể mất hơn một giờ làm việc nếu có sự cố xảy ra. Tôi có thể thử nghiệm và tái cấu trúc mà không phải lo lắng, vì nếu nó không ổn, tôi luôn có thể quay lại phiên bản làm việc cuối cùng của mình.

Nếu đó là trường hợp của bạn, tôi khuyên bạn nên sử dụng kiểm soát nguồn. Nó không khó để học.


7

Bạn phải sử dụng một phần mềm kiểm soát phiên bản, nếu không phân tích của bạn sẽ không thể tái tạo hoàn hảo.

Nếu bạn muốn công bố kết quả của mình ở đâu đó, bạn sẽ luôn có thể xây dựng lại trạng thái của các tập lệnh của mình tại thời điểm bạn đã tạo chúng. Giả sử một trong những người đánh giá phát hiện ra lỗi trong một trong các tập lệnh của bạn: làm thế nào bạn biết kết quả nào được thực hiện và kết quả nào không?

Theo nghĩa này, một hệ thống sao lưu là không đủ vì có lẽ nó chỉ được thực hiện một lần mỗi ngày và nó không áp dụng nhãn cho các bản sao lưu khác nhau, vì vậy bạn không biết phiên bản nào tương ứng với kết quả nào. Và học một vcs đơn giản hơn những gì bạn nghĩ, nếu học cách thêm một tập tin và cách cam kết thay đổi thì đã đủ.


1
Bạn đưa ra một lập luận mạnh mẽ. Tuy nhiên, tôi nghĩ rằng nghiên cứu tái sản xuất là có thể mà không cần một hệ thống kiểm soát phiên bản chính thức. Nó chỉ kém thanh lịch và kém linh hoạt. Tôi cố gắng viết mã R bằng cách sử dụng các nguyên tắc lập trình biết chữ để đầu ra R được tự động tích hợp vào tài liệu cuối cùng. Các tập tin liên quan đến sản phẩm cuối cùng này sau đó có thể được lưu.
Jeromy Anglim

giúp bạn áp dụng lại toàn bộ phân tích trên dữ liệu của mình, nhưng nó không cho bạn biết kết quả nào trước đây của bạn bị ảnh hưởng bởi lỗi.
dalloliogm

6

Là kiểm soát phiên bản có giá trị nỗ lực?

CÓ lớn.

Những ưu và nhược điểm chính của việc áp dụng kiểm soát phiên bản là gì?

ưu điểm: bạn có thể theo dõi những gì bạn đã làm trước đây. Đặc biệt hữu ích cho latex, vì bạn có thể cần một đoạn cũ đã bị xóa bởi bạn! Khi máy tính của bạn gặp sự cố hoặc bạn làm việc trên một cái mới, bạn sẽ lấy lại dữ liệu của mình.

Nhược điểm: bạn cần thực hiện một số cài đặt.

Chiến lược tốt để bắt đầu với kiểm soát phiên bản để phân tích dữ liệu với R (ví dụ: ví dụ, ý tưởng quy trình làm việc, phần mềm, liên kết đến hướng dẫn) là gì?

Chỉ cần bắt đầu sử dụng nó. Tôi sử dụng rùa SVN trên windows làm công cụ máy khách và bộ phận của tôi có máy chủ svn, tôi đặt tất cả mã và dữ liệu của mình (vâng, bạn cũng đặt dữ liệu của mình ở đó!) Ở đó.


6

Bước lùi lại một chút trước và tìm hiểu những lợi thế của việc viết các gói R! Bạn nói rằng bạn có các dự án với hàng ngàn dòng mã, nhưng những dự án này không có cấu trúc hoặc tài liệu như mã gói là gì? Bạn nhận được những chiến thắng lớn khi tuân thủ các lý tưởng gói, bao gồm tài liệu cho mọi chức năng, kiểm tra nhiều lỗi khó bắt thông thường, cơ sở để viết các bộ kiểm tra của riêng bạn, v.v.

Nếu bạn chưa có kỷ luật để sản xuất một gói, thì tôi không chắc bạn đã có kỷ luật để thực hiện kiểm soát sửa đổi phù hợp.


3
Đó là tất cả một hành trình, đặc biệt là khi bạn đến từ một nền tảng không phải là CNTT. Bây giờ tôi đang sử dụng git, và nó thật tuyệt. Tôi cũng bắt đầu tìm hiểu về cơ sở hạ tầng gói R. Liên quan đến 1000 dòng mã, điều này thường là kết quả của một lượng lớn xử lý dữ liệu riêng và đồ họa dựa trên giả thuyết và tạo bảng. Mặc dù kinh nghiệm giúp dễ dàng nhìn thấy các khái niệm trừu tượng hơn, tôi thấy một số mã nhất định chỉ là một phần của ý nghĩa của việc phân tích các bộ dữ liệu tâm lý. Tôi nghĩ rằng điều này giúp giải thích sự phổ biến của gói ProjectTemplate và Sweave.
Jeromy Anglim

5

Tôi đồng ý với những tình cảm ở trên và nói rằng, Có, kiểm soát phiên bản là hữu ích.

Ưu điểm;

  • giữ cho nghiên cứu của bạn được ghi lại cũng như sao lưu, (gắn thẻ)
  • nó cho phép bạn thử các ý tưởng khác nhau và quay lại nếu chúng không hoạt động (phân nhánh)
  • Bạn có thể chia sẻ công việc của mình với người khác và họ có thể chia sẻ những thay đổi của họ với bạn (Tôi biết bạn đã không chỉ định điều này, nhưng thật tuyệt)
  • Hầu hết các hệ thống kiểm soát phiên bản giúp dễ dàng tạo một gói nén cho tất cả các tệp được kiểm soát tại một thời điểm nhất định, ví dụ tại thời điểm bạn gửi bài viết để xuất bản, điều này có thể giúp ích khi người khác xem xét bài viết của bạn. (bạn có thể thực hiện việc này một cách thủ công, nhưng tại sao tạo nên các quy trình này khi kiểm soát phiên bản chỉ thực hiện)

Về các bộ công cụ, tôi sử dụng Git , cùng với StatEtEclipse hoạt động tốt, mặc dù bạn chắc chắn không phải sử dụng Eclipse. Có một vài bổ trợ Git cho Eclipse , nhưng tôi thường sử dụng các tùy chọn dòng lệnh.


Tôi sử dụng StatET và Eclipse cho R; vì vậy có lẽ tôi sẽ thử git trước.
Jeromy Anglim

4

Một phiên bản Điều khiển để phát triển solo (dưới bất kỳ hình thức nào) thực sự thú vị cho:

  • khám phá lịch sử và so sánh công việc hiện tại với các cam kết trong quá khứ
  • phân nhánh và thử các phiên bản khác nhau cho cùng một tập tin

Nếu bạn không thấy mình thực hiện một trong hai tính năng kiểm soát phiên bản cơ bản đó, một công cụ sao lưu đơn giản có thể là tất cả những gì bạn cần.
Nếu bạn có nhu cầu về các tính năng đó, thì bạn cũng sẽ nhận được bản sao lưu ( git bundleví dụ)


4

Tôi cũng làm công việc viết kịch bản solo và tôi thấy rằng nó giúp mọi thứ đơn giản hơn thay vì làm cho chúng phức tạp hơn. Sao lưu được tích hợp vào quy trình mã hóa và không yêu cầu một bộ quy trình hệ thống tệp riêng biệt. Thời gian cần thiết để tìm hiểu những điều cơ bản của bất kỳ hệ thống kiểm soát phiên bản nào chắc chắn sẽ là thời gian tốt.


4

Dropbox có một điều khiển phiên bản "ppor man" giúp bạn có một phần trong đó để có ít nỗ lực với nhiều lợi ích bổ sung.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.