對於一個項目,我使用了Latex並輸入了報告,現在我的教授發給我一個「revision.diff」文件,顯示她在「report.tex」文件中所做的所有不同之處。我想知道是否有一種方法可以接受diff文件中的更改?如何接受diff文件的修訂?
2
A
回答
3
我假設你在某種類型的unix機器上(即Linux或Mac)。
使用的diff的標準方法是與patch
程序(git
使用密切相關的格式,這就是爲什麼你可以潛在地使用git
,但patch
幾乎肯定會出現你的機器,更簡單)。
首先,請確保您的教師收到的.tex文件的版本完全相同。
然後
% patch <revision.diff
...是一個簡短的回答。
不幸的是,完全沒有創建補丁的標準方法,不僅僅是因爲有幾種或多或少「標準」方式來格式化差異。所以有一些潛在的複雜性。
如果補丁文件開始看起來像這樣
2c2
< Blah blah
---
> Blah blah wibble.
或本:
--- report.tex 2012-04-30 21:05:51.000000000 +0100
+++ report-modified.tex 2012-04-30 21:06:08.000000000 +0100
@@ -1,5 +1,5 @@
\documentclass{article}
-Blah blah
+Blah blah wibble.
...然後將上面^ Wshould工作。
如果它開始看起來像這樣:
--- a/report.tex 2012-04-30 21:05:51.000000000 +0100
+++ b/report.tex 2012-04-30 21:06:08.000000000 +0100
@@ -1,5 +1,5 @@
\documentclass{article}
-Blah blah
+Blah blah wibble.
(注意頂部的a/
和b/
),那麼你就必須使用
% patch -p1 <revision.diff
的-p1
刪除1
「水平'來自文件頂部提到的文件名的斜線。
基本上就是這樣。請參閱修補程序(1)(即修補程序命令的手冊頁)以獲得更多討論。特別是,任何以這種方式發送補丁的人都應該閱讀補丁聯機幫助頁底部的「補丁發送者注意事項」並將其消化。
如果你開始用略有不同版本的report.tex
比你發送你的教授(道德這個故事的一部分,使用版本控制系統之一,標籤或保存版本的筆記你然後補丁命令會報告錯誤,並執行類似於在同一目錄中創建名爲report.tex.rej
的文件。這應該讓你拼湊出相關的變化並手工應用。
3
它是標準的統一差異格式文件嗎?如果是這樣,請使用git apply revision.diff
來應用該修補程序。
相關問題
- 1. DIFF有關休眠envers修訂
- 2. 顛覆性的svn:外部對象參照固定修訂不接受修訂
- 3. tortoisegit diff顯示未修改的文件
- 4. 修訂XML文件
- 5. 混帳difftool --dir-DIFF:如何複製回修改過的文件
- 6. 如何「反轉」diff文件?
- 7. 在diff文件中處理修改
- 8. SVN diff在android項目中的所有strings.xml文件之間2修訂
- 9. 如何接受vaadin中的xml文件
- 10. 恢復文件修訂版
- 11. 我們如何從pdb文件獲取源文件修訂號?
- 12. 如何捕獲WTObject的修訂事件?
- 13. 如何使用CVS diff比較修訂版與之前的版本?
- 14. 從資源文件連接的diff鍵值如何?
- 15. ORM:文章,修訂和主要修訂
- 16. openfire自動訂閱接受
- 17. git diff - 忽略修訂版本之間的所有換行
- 18. 無法解析龜svn中的diff修訂頭'不存在'?
- 19. Diff MIDI文件
- 20. 如何查詢引用給定文件的修訂版的Mercurial?
- 21. 如何獲取我的css文件的最新修訂日期?
- 22. 修改的libusb接受文件描述符
- 23. 如何處理文章修訂?
- 24. 鏈接錯誤/問題,修訂和改變的文件
- 25. 如何訂閱Windows文件修改事件
- 26. Phabricator SVN修訂版文件上下文
- 27. Subversion的隱藏修訂文件
- 28. git checkout git gui中的文件修訂
- 29. 如何使ASP文件上傳控件接受大文件?
- 30. 如何找出文件被刪除的修訂版本?
掛上。你用'git'標記了你的問題,但你的問題根本沒有提到git。你真的在使用git嗎?在這種情況下,git文檔可能是你的朋友(啊,我看到了問題:根據我的經驗,git文檔是沒有人的朋友......) –