Blog FOSS by Lê Trung Nghĩa

https://letrungnghia.mangvn.org

Microsoft đưa công cụ Git nguồn mở vào các công cụ phát triển của hãng

Microsoft incorporates open-source Git for development tools

Microsoft đã bổ sung thêm sự hỗ trợ của Git vào Visual Studio và Team Foundation Server

Microsoft has added Git support to Visual Studio and Team Foundation Server

By Joab Jackson | IDG News Service | Published 11:30, 01 February 13

Theo: http://www.computerworlduk.com/news/open-source/3423931/microsoft-incorporates-open-source-git-for-development-tools/

Bài được đưa lên Internet ngày: 01/02/2013

Lời người dịch: Từng đấu đầu dữ dội với thế giới phần mềm tự do nguồn mở, từng coi giấy phép hàng đầu của thế giới nguồn mở GPL là thứ chống lại chủ nghĩa tư bản, nhưng giờ đây, sau khi đã từng đóng góp mã nguồn cho nhân Linux có chính cái giấy phép GPL đó để sử dụng chung, bây giờ Microsoft đã còn đi xa hơn bằng việc sử dụng Git (một hệ thống kiểm soát mã nguồn do chính nhà sáng chế ra nhân Linux - Linus Torvalds tạo ra cùng cộng đồng nguồn mở thế giới) để tích hợp vào trong Visual Studio IDE, môi trường phát triển của các lập trình viên của Microsoft, nghĩa là sử dụng nguồn mở cho nhu cầu của riêng của Microsoft. Thực sự là nực cười cho những ai còn cho rằng phần mềm nguồn mở không ra gì, là không dành cho giới chuyên nghiệp.

Từng chống đối dữ dội phần mềm nguồn mở, Microsoft đã làm cho ấm mô hình phát triển đó qua các năm và bây giờ sẽ thực hiện bước không bình thường khi đưa một chương trình nguồn mở được Linus Torvalds phát triển vào trong các công cụ phát triển của riêng mình.

Microsoft đang tích hợp Git được sử dụng rộng rãi, một hệ thống quản lý mã nguồn (SCM) và kiểm soát phiên bản một cách phân tán, vào Visual Studio IDE (môi trường tích hợp dành cho các lập trình viên) và Team Foundation Server (TFS), 2 công cụ chính của hãng cho các lập trình viên chuyên nghiệp.

“TFS là một công cụ rất phổ biến trong doanh nghiệp, và Git đã phát triển trong cộng đồng nguồn mở”, Brian Harry, một đồng nghiệp kỹ thuật của Microsoft và là người quản lý đơn vị sản phẩm TFS, nói. “Bằng việc ôm lấy Git, chúng tôi muốn lấp đầy khoảng trống, sao cho nó có thể là công cụ tuyệt vời cho cả cộng đồng nguồn mở và cho doanh nghiệp”.

Harry sẽ công bố những tích hợp tại Hội nghị Thượng đỉnh ALM của Microsoft đang diễn ra tuần này tại Redmond, Washington.

TFS là phần mềm cho việc quản lý vòng đời phát triển ứng dụng, bao gồm quản lý các yêu cầu, quản lý dự án, quản lý cấu hình, kiểm thử và triển khai. Microsoft cũng đưa ra một phiên bản đặt chỗ của TFS, gọi là Team Foundation Service.

TFS có rồi một SCM được xây dựng sẵn để làm tài liệu và lưu trữ các thay đổi trong một kho mã đang tiến hóa. Nhưng nói rằng các đội phát triển ngày càng phân tán khắp các địa điểm khác nhau, nên Microsoft muoonns đưa ra một SCM phân tán, trong đó các lập trình viên có thể làm việc trong các bản sao mã cục bộ, và đồng bộ hóa những thay đổi của chúng cho các người khác trong dự án.

Git là câu trả lời đúng cho chúng tôi”

Thay vì việc xây dựng một SCM phân tán từ đầu, Microsoft đã quyết định triển khai một SCM đã được sử dụng rộng rãi rồi. “Git là câu trả lời đúng cho chúng tôi”, Harry nói.

Once vehemently opposed to open-source software, Microsoft has warmed to the development model over the years and will now take the unusual step of incorporating an open-source program developed by Linus Torvalds into its own development tools.

Microsoft is integrating the widely used Git, a distributed revision control and source code management (SCM) system, into its Visual Studio IDE (integrated developer environment) and Team Foundation Server (TFS), two of the company's main tools for enterprise developers.

"TFS is a very popular tool in the enterprise, and Git has grown up in the open-source community," said Brian Harry, a Microsoft technical fellow and the TFS product unit manager. "By embracing Git, we want to bridge that gap, so it can be a great tool for both the open-source community and for the enterprise."

Harry will announce the integrations at the Microsoft ALM Summit being held this week in Redmond, Washington.

TFS is software for managing the application development lifecycle, including requirements management, project management, configuration management, testing and deployment. Microsoft also offers a hosted version of TFS, called Team Foundation Service.

TFS already has a built-in SCM to document and store changes in an evolving code base. But given that development teams are increasingly scattered across different locations, Microsoft wanted to offer a distributed SCM, in which developers can work on local copies of the code, and synchronise their changes to others on the project.

"Git was the right answer for us"

Instead of building a distributed SCM f-rom scratch, Microsoft decided to deploy one already in wide use. "Git was the right answer for us," Harry said.

Microsoft has already recognized the growing popularity of Git among its users. Last year, it released the Git TFS Bridge, which allowed developers to use Git on a local machine, while pushing changes to TFS.

Torvalds started work on Git in 2005 after a licensing disagreement over BitKeeper, the commercial code repository that was used to manage the Linux codebase.

Torvalds designed Git specifically to manage software projects as large as the Linux kernel, which currently has more than 15 million lines of code, is up-dated every two to three months, and is built collaboratively by thousands of developers worldwide.

Torvalds and his team built the software as a globally distributed repository that would not slow in response times as the code base grows.

Microsoft đã nhận thức được rồi sự phổ biến đang gia tăng của Git trong những người sử dụng nó. Năm ngoái, nó đã đưa ra Git TFS Bridge, đã cho phép các lập trình viên sử dụng Git trên máy cục bộ, trong khi thúc đẩy những thay đổi cho TFS.

Torvalds đã bắt đầu làm việc về Git từ năm 2005 sau một thỏa thuận cấp phép về BitKeeper, kho mã nguồn thương mại mà đã được sử dụng để quản lý kho mã nguồn của Linux.

Torvalds đã thiết kế Git đặc biệt để quản lý các dự án phần mềm lớn như nhân Linux, nó hiện có hơn 15 triệu dòng lệnh, được cập nhật 2 -3 tháng một lần, và được xây dựng cộng tác từ hàng ngàn lập trình viên trên thế giới.

Torvalds và đội của ông đã xây dựng phần mềm đó như một kho phân tán toàn cầu mà có thể không làm chậm đi thời gian trả lời khi kho mã nguồn gia tăng.

Sự kết hợp của Git và TFS sẽ là “một sự áp dụng đúng của Git. Nó không phải là 'Microsoft Git'”, Harry nói. Công ty sẽ sử dụng libgit2, phiên bản Git được triển khai rộng rãi nhất, viết bằng C.

Khi tạo một dự án mới, những người sử dụng TFS bây giờ sẽ có sự lựa chọn sử dụng hoặc là Git, được đưa vào trong gói phần mềm TFS, hoặc hệ thống kiểm soát phiên bản tập trung của riêng TFS.

“Mục tiêu của chúng tôi với TFS là để cho phép những người sử dụng có cả hệ thống kiểm soát phiên bản tập trung tốt nhất và hệ thống kiểm soát phiên bản phân tán tốt nhất”, Harry nói.

TFS có thể thực hiện một dải các chức năng với một kho Git, như việc giám sát công việc và kiểm thử, xây dựng một cách tự động. Qua thời gian, Git sẽ có tính năng tương đương với kho TFS tập trung, và cũng sẽ được gawnsn với Active Directory và các công cụ kiểm toán và an ninh doanh nghiệp khác của Microsoft.

Team Foundation Service cũng sẽ đưa ra một phiên bản đặt chỗ được của Git cho những khách hàng để sử dụng, bắt đầu vào thứ tư này.

Visual Studio có thể là giao diện đầu tiên có Git

Microsoft đang chuyên tâm thiết kế hàng giờ đồng hồ để giúp phát triển tiếp libgit2. Hãng sẽ làm việc với GitHub và các lập trình viên cộng đồng khác mà chuyên tâm cho phần mềm này.

The incorporation of Git in TFS will be "a true adoption of Git. It is not 'Microsoft Git,'" Harry said. The company will be using libgit2, the most widely deployed version of Git, written in C.

When creating a new project, users of TFS will now have the choice to use either Git, which will be included in the TFS software package, or TFS' own centralised version control system.

"Our goal with TFS is to let users have both the best centralized version control system, and the best distributed version control system," Harry said.

TFS can execute a range of functions with a Git repository, such as automated builds, testing and work tracking. Over time, Git will have feature parity with the centralised TFS repository, and will also have tie-ins to Active Directory and other Microsoft enterprise security and auditing tools.

The Team Foundation Service will also offer a hosted version of Git for customers to use, starting Wednesday.

Visual Studio can be primary Git interface

Microsoft is dedicating engineering hours to help further develop libgit2. It'll work with GitHub and other community programmers who devote time to the software.

Some of the work that Microsoft engineers will do will be around making the Windows version more usable. Harry admitted that the Windows version of Git has trailed behind the Mac OS and Unix versions, in terms of ease of use. "We will help rectify that," Harry said.

In addition to including Git with TFS, Microsoft is also linking Git with its Visual Studio IDE. The company has released a plug-in that will allow users to commit finished code directly to any Git repository. The Git Community Technology Preview (CTP) plug-in works with Visual Studio 12, and Microsoft plans to support Git natively in the next version of the IDE .

Một số công việc mà các kỹ sư của Microsoft sẽ làm sẽ là xung quanh việc làm cho phiên bản Windows khả dụng hơn. Harry đã thừa nhận rằng phiên bản Git cho Windows đã kéo lê sau các phiên bản của Mac OS và Unix, về việc dễ dàng sử dụng. “Chúng tôi sẽ sửa điều đó”, Harry nói.

Bổ sung thêm vào việc đưa Git vào với TFS, Microsoft cũng liên kết Git với Visual Studio IDE. Hãng đã đưa ra một trình cài cắm sẽ cho phép những người sử dụng đệ trình mã nguồn hoàn chỉnh một cách trực tiếp tới bất kỳ kho Git nào. Trình cài cắm Git Community Technology Preview (CTP) làm việc với Visual Studio 12, và Microsoft lên kế hoạch hỗ trợ Git bẩm sinh trong phiên bản tiếp sau của IDE.

Visual Studio có thể giao tiếp với một triển khai Git trong TFS, tới một triển khai trong Team Foundation Service, tới dịch vụ đặt chỗ GitHub, hoặc tới bất kỳ triển khai Git nào khác, Harry nói.

Hiệu quả là, Visual Studio có thể trở thành giao diện có Git đầu tiên, cho các lập trình viên. “Tôi có thể kết nối, nhái một kho, và mở dự án trong Visual Studio, sửa các tệp và đệ trình”, Harry nói.

Các lập trình viên cũng sẽ có khả năng thấy những thay đổi mã được đệ trình cho Git, rà soát lại những thay đổi được thực hiện cho mã, chuyển sang nhánh mã khác và trộn mã vào dòng chính của dự án.

“Git đã có một vấn đề khá phức tạp”, Harry nói. “Chúng tôi đang thử hệ thống hóa các mẫu phổ dụng nhất của việc sử dụng Git, tạo một dòng công việc đơn giản trong Visual Studio mà làm cho Git có khả năng tiếp cận dễ dàng được hơn”.

Visual Studio can communicate with a Git deployment on TFS, to one on the Team Foundation Service, to the GitHub hosted service, or to any other Git deployment, Harry said.

In effect, Visual Studio can become the primary interface for Git, for developers. "I can connect, clone a repository, and open the project in Visual Studio, edit files and commit," Harry said.

Developers will also be able to see the code changes committed to Git, review the changes made to the code, switch to another branch of code and merge code into the project's mainline.

"Git has had an issue of getting pretty darn complicated," Harry said. "We've been trying to codify the most common patterns of using Git, to cre-ate a simple workflow in Visual Studio that makes Git approachable."

Dịch: Lê Trung Nghĩa

letrungnghia.foss@gmail.com