Để thêm các tệp một cách đệ quy từ dòng lệnh với svn, chúng ta có một số khả năng.
Phương án đầu tiên, có lẽ sạch sẽ nhất:
svn add --force * --auto-props --parents --depth infinity -q
Tuy nhiên chỉ có các tùy chọn sau đây dường như thực sự cần thiết:
svn add --force *
Sau đó là các giải pháp thay thế hơi phức tạp hơn để hiểu:
svn status | grep '?' | sed 's/^.* /svn add /' | bash
svn add `svn status .|grep "^?"|awk '{print $2}'`
svn st | grep "^\?" | awk "{print \$2}" | xargs svn add $1
Cũng như một giải pháp cho phép bao gồm các tệp chứa khoảng trắng (không khuyến nghị :p)
svn status| grep ^? | while read line ; do svn add "`echo $line|cut --complement -c 1,2`" ;done
Các biện pháp phòng ngừa trước khi thực hiện lệnh
Hướng dẫn này giữ nguyên lệnh và bối cảnh của lần xuất bản của nó. Trước khi sử dụng trên một kho hiện tại, hãy kiểm tra nhánh, các tệp đã chỉnh sửa và mục tiêu chính xác:
git status --short
git log --oneline --decorate -5
Tạo một nhánh hoặc một nhãn sao lưu khi thao tác ghi lại lịch sử lại hoặc xóa tệp. Đặc biệt, git reset --hard ghi đè các sửa đổi đã theo dõi trong thư mục làm việc.
Tham chiếu : tài liệu chính thức của git reset.