Git là một phần mềm, hệ thống quản lý mã nguồn phân tán. Ban đầu Git được phát triển phục vụ cho Linux nhưng bây giờ bạn có thẻ sử dụng được nó trên cả Windows. Với Git bạn có thể lưu lại lịch sử và trạng thái của các file trong dự án, sau đó bạn có thể rollback về một lịch sử bất kì mà không cần phải backup lại.
Git sử dụng mô hình phân tán và điều này hoàn toàn ngược với SVN hoặc CSV, mỗi nơi lưu trữ source ta gọi là 1 repo (repository), các lập trình viên sẽ tạo một repo tại máy của mình. Câu hỏi đặt ra là nếu user nào cũng có repo riêng thì việc đụng độ code khi upload mã nguồn lên repo chính thì sao? Điều này hoàn toàn được giải quyết bởi Git sẽ cảnh báo và giúp các lập trình viên biết có sự đụng độ code (conflick) và sẽ yêu cầu họ chỉnh sửa và thay đổi trạng thái hết đụng độ.
Thông thường ta cần kết hợp với một dịch vụ lưu trữ mã nguồn trực tuyến như Github (repo chính), tại đây các thành viên sẽ dùng lệnh để đẩy dữ liệu từ máy tính của cá nhân họ lên Github, điều này hoàn toàn an toàn và bảo mật bởi mỗi repo của các lập trình viên đều là bản sao thật của repo trên github, vì vậy khi server bị down thì các thành viên vẫn có mã nguồn backup trên máy tính của họ.