
Working with lots of changes in parallel on git can be painful. You end up juggling branches and commits, and running scary rebase -i commands that can leave your tree in a half-broken state if you so much as sneeze. jj, an alternative to git, gets discussed a lot these days (1, 2, 3, 4) and is often pitched as a solution. While I’m very sold on the problems jj is trying to solve, the way it solves them hasn’t quite hit home with me. Every 3 months, for the last 1.5 years, I try it out for a few days, really trying to make it part of my workflow but eventually I give up and go back to git.1 That’s where git history comes in. It’s an experimental command that arrived across two releases, 2.54 (April, reword and split subcommands) and 2.55 (June, fixup subcommand). It got a flurry of attention on each release day, and then, as far as I can tell, not much community discussion since. Which is a shame, because IMO it already delivers several of the benefits people tout for jj without needing to switch your whole workflow. And the cool thing is that it’s part of the core git distribution, so you can try it without installing anything.
Nguồn: https://lalitm.com/post/git-history. 8sync News chỉ tóm tắt và dẫn link; bản quyền nội dung thuộc tác giả và nguồn gốc.
Đọc tin ở đây, luyện code, học theo lộ trình và luyện IELTS trên các sản phẩm anh em — tất cả kết nối với nhau trong hệ sinh thái 8 Sync Dev.
Cổng chính của hệ sinh thái: giới thiệu sản phẩm, blog và bảng giá trọn bộ.
Khám pháHọc theo lộ trình với video, quiz chấm tự động, certificate và mentor đang làm nghề.
Xem khóa họcLuyện thuật toán chấm tự động 7 ngôn ngữ, chạy code ngay trên trình duyệt.
Ngày càng nhiều dự án mã nguồn mở rời khỏi GitHub do lo ngại về thời gian downtime thường …
AI cho doanh nghiệp B2B: chat đa kênh AI phản hồi, gom lead tiềm năng, phân loại khách hàng.
Sắp ra mắtGit 2.55.0 bổ sung nhiều tính năng mới như lệnh git history fixup để sửa đổi commit đã tồn tại, hỗ trợ fsmonitor daemon trên Linux qua inotify(7), khả năng đẩy lên nhiều remote cùng lúc, tùy chọn --graph-lane-limit cho git log --graph, tải xuống blob theo lô cho partial clones, và Rust trở thành dependency bắt buộc trong quá trình build (có thể tắt nếu cần).
Lập trình viên cần đọc để cập nhật về các tính năng mới trong Git 2.55.0 như cách sửa đổi commit và tự động rebase nhánh chồng lấn, giúp tối ưu hóa công việc quản lý lịch sử mã và hiệu suất clone, đặc biệt khi làm việc với các dự án lớn hoặc hệ thống phân tán.
Git 2.55 ra mắt với hơn 100 nhà đóng góp, nổi bật với hỗ trợ incremental multi-pack index (MIDX) trong git repack, lệnh mới git history fixup để gộp staged changes vào commit trước, thực thi song song hooks dựa trên config, cải thiện hiệu suất sinh bitmap (giảm từ 612s xuống 294s trong benchmark), cùng nhiều tính năng mới như --path-walk cho partial clone, git format-rev, autostash trong git checkout -m, remote group cho git push và tối ưu hóa đồ thị commit.
Là người phát triển cần tìm cách tối ưu hóa công cụ quản lý dự án, Git 2.55 mang những cải tiến hiệu suất và tính năng mới giúp giảm thời gian thực hiện các tác vụ lặp đi lặp lại và mở rộng khả năng tương tác với các repo lớn hơn.
Epic Games vừa giới thiệu Lore, hệ thống kiểm soát phiên bản mã nguồn mở dành riêng cho dự án game và giải trí kết hợp code với tài sản nhị phân lớn. Lore xử lý file nhị phân như thành phần chính nhờ lưu trữ theo khối, loại bỏ trùng lặp và tải dữ liệu theo nhu cầu, sử dụng kiến trúc tập trung có địa chỉ nội dung với Merkle trees và chuỗi phiên bản bất biến.
Những lập trình viên làm game hoặc phát triển dự án đa media sẽ tìm hiểu Lore vì nó giải quyết những thách thức về quản lý phiên bản và lưu trữ binary phức tạp mà Git không thể xử lý hiệu quả, đặc biệt trong môi trường cần độ ổn định và hiệu suất cao như các dự án lớn.
Ba công ty Cursor, GitLab và Zed đều nhận thấy GitHub đang gặp khó khăn trước khối lượng code do AI tạo ra, nhưng họ đề xuất các giải pháp khác nhau để tái xây dựng nền tảng này. Cursor giới thiệu Origin, tương thích Git nhưng tối ưu cho workload của agent; GitLab phát triển Project Switch với backend cải tiến nhằm tăng tốc độ xử lý lên 50 lần; còn Zed thay thế hoàn toàn mô hình commit bằng DeltaDB, theo dõi các thay đổi liên tục.
Những công cụ mới như Cursor, GitLab và Zed đang thay đổi cơ sở hạ tầng mã nguồn để phù hợp với thế giới AI, giúp lập trình viên hiểu cách tối ưu hóa hiệu suất, giảm chi phí và tương tác hiệu quả hơn với các công cụ tương tác tự động trong tương lai.
Doltgres, cơ sở dữ liệu tương thích PostgreSQL với tính năng kiểm soát phiên bản kiểu Git, sẽ ra mắt phiên bản 1.0 vào ngày 6 tháng 8. Phiên bản này tập trung vào tính chính xác (99% tuân thủ SQL Logic Test), ổn định định dạng lưu trữ, hiệu năng (trong phạm vi 3x PostgreSQL), và tương thích rộng rãi với các ORM, thư viện và công cụ phổ biến. Các tính năng bổ sung như workflow remote push/pull, giao thức nhân bản riêng cho thiết lập HA, cùng garbage collection tự động cũng đang được hoàn thiện. Nhóm phát triển kêu gọi người dùng thử nghiệm Doltgres trên workload thực tế và báo cáo lỗi trước khi ra mắt.
Lập trình viên nên đọc bài này để khám phá cách Doltgres kết hợp cơ sở dữ liệu PostgreSQL với hệ thống quản lý phiên bản Git, giúp phát triển ứng dụng trở nên hiệu quả hơn với tính ổn định, tương thích ORM và khả năng mở rộng cho các dự án lớn.
objgit là một máy chủ Git dạng single-binary thử nghiệm, lưu trữ toàn bộ repository trên object storage của Tigris mà không cần ổ đĩa cục bộ, Git binary hay database. Dự án sử dụng go-git (triển khai Git thuần Go) và lớp trừu tượng filesystem billy đã được điều chỉnh cho Tigris, đồng thời giải quyết nhiều thách thức kỹ thuật như atomic rename, stat-storm từ go-git, deadlock phân tán, cache packfile cục bộ, và lỗi cache listing. Kết quả hỗ trợ push/pull qua HTTP, git:// và SSH, với repository được tạo tự động khi push lần đầu.
Lập trình viên muốn khám phá cách tối ưu hóa kiến trúc hệ thống Git bằng cách chuyển sang lưu trữ đối tượng trên cloud mà không phụ thuộc vào đĩa cục bộ hoặc cơ sở dữ liệu, đặc biệt khi cần giải quyết các vấn đề như hiệu năng phân tán và bảo mật trong môi trường sản phẩm.

Magit 4.6 vừa phát hành với 313 commit trong 6 tháng, tập trung cải tiến buffer blob-visiting (hỗ trợ luôn dùng magit-find-file-noselect, volatile/cached blob buffers, revert blob qua 'g' và nhảy giữa blob tốt hơn). Tính năng mới gồm syntax highlighting cho diff (tạm vô hiệu do hiệu năng), hỗ trợ biến hook mới của Git v2.54.0, cùng các lệnh chèn changelog và hoàn thiện symbol completion.
Nếu bạn là lập trình viên sử dụng Emacs và Git thường xuyên, bài này sẽ giúp bạn cập nhật những cải tiến mới về quản lý file blob, hiệu suất và tính năng mới như revert blob, syntax highlighting diff và cách sử dụng hook Git hiệu quả hơn.