- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我想要的是 -
git checkout FHEAD~ path/filename
我目前所做的是通过 -
查找文件的先前版本 git log -1 --skip=1 path/filename
然后,
git checkout
câu trả lời hay nhất
检索文件先前版本的别名的简单示例。
这里的技巧是使用 --format 格式化日志输出以仅返回提交哈希
[alias]
prev = "!f(){ git checkout $(git log -1 --format="%H" --skip=1 -- ${GIT_PREFIX:-.}/$1) -- ${GIT_PREFIX:-.}/$1; git reset ${GIT_PREFIX:-}/$1; }; f"
sử dụng git log -1
可确保 git prev
始终返回直接父文件。选择下一个 parent 可能会更复杂。
另请注意,文件一旦 checkout ,就会立即添加到索引中。它不会 merge 到您现有的副本中,并且不会警告覆盖本地更改。我调用了 git-reset 以确保 checkout 文件仅位于工作目录中,而不是索引中。
GIT_PREFIX
的使用允许您输入相对路径,尽管只有相对较新版本的 git 支持 GIT_PREFIX。
编辑..
同样的事情使用 git rev-list.. 一个非常强大的 git 命令,设计用于在编写脚本和自动化时遍历 git 祖先图...
[alias]
prev = "!f(){ git checkout $(git rev-list --max-count=1 --skip=1 HEAD -- ${GIT_PREFIX:-.}/$1) -- ${GIT_PREFIX:-.}/$1; git reset ${GIT_PREFIX:-}/$1; }; f"
关于git - Git 中是否有一个文件的先前版本的简写?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26404448/
Không thể tạo bảng Hbase từ Hive bằng Hive phiên bản 1.1.0 HBase phiên bản 0.94.8 và hadoop phiên bản 2.7.0 hive (mặc định)> TẠO BẢNG
Tôi đang cố gắng tạo tệp thực thi cho ứng dụng điện tử nhưng gặp phải sự cố này Không thể xác định phiên bản Electron. Vui lòng chỉ định phiên bản Electron.
Tôi đang cố gắng để ngưỡng thích ứng hoạt động trong liên kết python với opencv (swig one) - không thể để opencv 2.0 hoạt động vì tôi đang sử dụng bảng beagle vì quá trình biên dịch chéo chưa hoạt động
Tôi đã sử dụng JMeter trên máy linux, từ dòng lệnh được một thời gian. Hoạt động tốt. Hôm nay tôi đã thử nó trên máy Windows (máy khách mới, v.v.) và nó vẫn hoạt động, nhưng đầu ra trong cửa sổ bảng điều khiển rất khác. Lin
Trong môi trường mã hóa của mình, tôi thường sử dụng các phiên bản Java và Eclipse mới nhất. Khi viết mã nguồn, tôi không chú ý đến việc liệu các phương thức hoặc lớp API mà tôi sử dụng có tương thích ngược với các phiên bản Java hoặc Eclipse cũ hơn hay không. Lưu trong javadoc
Câu hỏi đặt ra là về sự kết hợp cụ thể của các phiên bản, nhưng tổng quát hơn. Tôi vừa nâng cấp từ Kubfox 12.04 lên 14.04. Bây giờ khi tôi muốn biên dịch mã CUDA (sử dụng CUDA 6.5), tôi nhận được: #error -- unsupp
Tôi hiện đang đóng hộp cát một số ứng dụng của mình và có vẻ như tôi sẽ phải xóa một số chức năng để đáp ứng các quy tắc về hộp cát (và các quy định khác) của Mac App Store. Rõ ràng người dùng sẽ không vui khi mất chức năng và tôi e rằng họ sẽ không buộc tội Apple đưa ra những quy tắc ngu ngốc,
Tôi đã tạo một biểu ngữ hoạt hình bằng phiên bản flash và js. Có thể phát hiện phiên bản tức là bên dưới phiên bản 9 và sau đó phân phối biểu ngữ flash nếu không thì biểu ngữ js. Câu trả lời hay nhất Bạn có thể sử dụng nhận xét có điều kiện để phát hiện phiên bản IE
Tôi có một ứng dụng xử lý cơ sở dữ liệu ở các vị trí khác nhau và tôi muốn kiểm tra xem các cơ sở dữ liệu này có được mở bằng Firebird 2.5 trở lên hay không. Gần đây chúng tôi đã di chuyển từ Firebird 2.0 lên 2.5 và chúng tôi có nhiều cơ sở dữ liệu đáp ứng sele
Tôi đang phát triển một ứng dụng và tôi đã xây dựng phần phụ trợ bằng Java và Jersey được lưu trữ trên máy chủ của mình. Tôi đang sử dụng Tomcat7 trên máy chủ để gọi dịch vụ web. Tôi đã từng có một máy tính cài đặt Ubuntu và tôi
Tôi có thể sử dụng hàm GetVersionEx() để lấy phiên bản Windows, nhưng hàm này trả về một số thay vì một chuỗi. Nhưng không có vấn đề gì vì tôi có thể chuyển đổi số thành chuỗi như: if (osvi.dwMaj
Tôi đã cài đặt Anaconda 2 & 3 trong hệ thống của mình. Anaconda 2 bao gồm python 2.7 & Anaconda 3 bao gồm python 3.6. Tôi cần chạy pyt của mình bằng dấu nhắc lệnh
Tôi đang cố gắng xây dựng một dự án Android nhưng đã xảy ra lỗi sau Lỗi:(10, 1) Đã xảy ra sự cố khi đánh giá dự án ':app' > Failed t.
đóng cửa. Câu hỏi này cần tập trung hơn. Hiện tại nó không chấp nhận câu trả lời. Bạn muốn cải thiện câu hỏi này? Đã cập nhật câu hỏi để tập trung vào một vấn đề chỉnh sửa bài đăng này. Đã đóng 4 năm trước. Cải thiện câu hỏi này
Trước khi hạ cấp GCC của mình, tôi muốn biết liệu có cách nào để xác định chương trình/khung hoặc phần phụ thuộc nào trong máy của tôi sẽ bị hỏng hay không và liệu có cách nào tốt hơn để thực hiện cài đặt openpose không? (ví dụ: thay đổi nội dung nào đó trong CMake) Có cách nào để thực hiện việc này mà không cần
Tôi đã cài đặt Shadowsocks-Qt5 trong mã của thiết bị đầu cuối sudo apt-get install Shadowsocks-qt5, sau đó tôi có thể tìm thấy biểu tượng khởi chạy bằng cách tìm kiếm, nhưng nó không mở khi tôi nhấp vào biểu tượng. Sau đó tôi thử
Các tài liệu tìm thấy trên Internet nói rằng MLLP V2 (phiên bản 2) là yêu cầu đối với tất cả các giao thức (giao thức) truyền tin nhắn được sử dụng để truyền tải nội dung HL7 phiên bản 3. Có vẻ như MLLP phiên bản 2 chủ yếu được sử dụng cho HL7 phiên bản 3. chúng ta có thể/nên
Tôi đang sử dụng thước đo góc với trình quản trị web selinium. Phiên bản chromeDriver của tôi là 78.0.1 và phiên bản chrome là 78.0.3904.97. Cả hai phiên bản đều khớp nhau nên sẽ không có
Tôi đang làm theo hướng dẫn để thiết lập cơ sở dữ liệu mysql và thực hiện một số nội dung. Tôi không thể tìm thấy trình khám phá cơ sở dữ liệu. Tôi đã đọc rất nhiều nhưng nó không hoạt động bình thường trong Window->show View->Dataxxx hoặc tab phía trên bên phải. Câu trả lời hay nhất từ
Tôi đã cài đặt Anaconda 2.0.1 trên máy tính để bàn KDE của mình. Khi tôi chạy python và xem tất cả các mô-đun đã cài đặt, tôi nhận được thông báo này "Không thể kết hợp thư viện Qt không tương thích (phiên bản 0x40801) với thư viện này (phiên bản 0x4080)
Tôi là một lập trình viên xuất sắc, rất giỏi!