[git patch的使用]java
http://blog.csdn.net/kangear/article/details/39675421android
Git打補丁常見問題git
每每以爲獲得某個功能的補丁就認爲這個功能我就已經成功擁有 了,可是在最後一步的打補丁的工做也是須要至關謹慎的,甚至有可能還要比你獲取這個補丁花費的時間還要多。看到好多同行遇到這個問題,且最近本身也花費近 20天「獲取,打,驗證」一個特性功能的補丁。趁熱總結一下,知識點可能很少,可是問題是至關棘手的。api
1. 沒有獲得產品
shuliwu@koridy-251:~/D92/pizza$ git am ../patch/0001-support-screen-record.patch
Applying: support screen record
/home/shuliwu/D92/pizza/.git/rebase-apply/patch:60: trailing whitespace.
bool mIsRecordingScreenANS;
/home/shuliwu/D92/pizza/.git/rebase-apply/patch:91: trailing whitespace.
/home/shuliwu/D92/pizza/.git/rebase-apply/patch:148: trailing whitespace.
#if 1 //{
/home/shuliwu/D92/pizza/.git/rebase-apply/patch:153: trailing whitespace.
#endif //}
/home/shuliwu/D92/pizza/.git/rebase-apply/patch:237: trailing whitespace.
ALOGE("mStarted == true");
error: patch failed: device/rockchip/rk30sdk/init.rc:503
error: device/rockchip/rk30sdk/init.rc: patch does not apply
error: patch failed: frameworks/av/media/libstagefright/SurfaceMediaSource.cpp:53
error: frameworks/av/media/libstagefright/SurfaceMediaSource.cpp: patch does not apply
error: patch failed: frameworks/av/media/libstagefright/wifi-display/ANetworkSession.cpp:41
error: frameworks/av/media/libstagefright/wifi-display/ANetworkSession.cpp: patch does not apply
error: patch failed: frameworks/av/media/libstagefright/wifi-display/ANetworkSession.h:75
error: frameworks/av/media/libstagefright/wifi-display/ANetworkSession.h: patch does not apply
error: patch failed: frameworks/av/media/libstagefright/wifi-display/source/Converter.cpp:41
error: frameworks/av/media/libstagefright/wifi-display/source/Converter.cpp: patch does not apply
error: patch failed: frameworks/av/media/libstagefright/wifi-display/source/Converter.h:37
error: frameworks/av/media/libstagefright/wifi-display/source/Converter.h: patch does not apply
error: patch failed: frameworks/av/media/libstagefright/wifi-display/source/MediaPuller.cpp:174
error: frameworks/av/media/libstagefright/wifi-display/source/MediaPuller.cpp: patch does not apply
error: patch failed: frameworks/av/media/libstagefright/wifi-display/source/PlaybackSession.cpp:62
error: frameworks/av/media/libstagefright/wifi-display/source/PlaybackSession.cpp: patch does not apply
error: patch failed: frameworks/av/media/libstagefright/wifi-display/source/PlaybackSession.h:40
error: frameworks/av/media/libstagefright/wifi-display/source/PlaybackSession.h: patch does not apply
error: patch failed: frameworks/av/media/libstagefright/wifi-display/source/RepeaterSource.cpp:24
error: frameworks/av/media/libstagefright/wifi-display/source/RepeaterSource.cpp: patch does not apply
error: patch failed: frameworks/av/media/libstagefright/wifi-display/source/Sender.cpp:17
error: frameworks/av/media/libstagefright/wifi-display/source/Sender.cpp: patch does not apply
error: patch failed: frameworks/av/media/libstagefright/wifi-display/source/Sender.h:18
error: frameworks/av/media/libstagefright/wifi-display/source/Sender.h: patch does not apply
error: patch failed: frameworks/av/media/libstagefright/wifi-display/source/WifiDisplaySource.cpp:43
error: frameworks/av/media/libstagefright/wifi-display/source/WifiDisplaySource.cpp: patch does not apply
error: patch failed: frameworks/av/media/libstagefright/wifi-display/source/WifiDisplaySource.h:42
error: frameworks/av/media/libstagefright/wifi-display/source/WifiDisplaySource.h: patch does not apply
error: patch failed: frameworks/base/api/current.txt:10093
error: frameworks/base/api/current.txt: patch does not apply
error: patch failed: frameworks/base/core/java/android/hardware/display/DisplayManager.java:201
error: frameworks/base/core/java/android/hardware/display/DisplayManager.java: patch does not apply
error: patch failed: frameworks/base/core/java/android/hardware/display/IDisplayManager.aidl:30
error: frameworks/base/core/java/android/hardware/display/IDisplayManager.aidl: patch does not apply
error: patch failed: frameworks/base/core/jni/android_media_RemoteDisplay.cpp:32
error: frameworks/base/core/jni/android_media_RemoteDisplay.cpp: patch does not apply
error: patch failed: frameworks/base/media/java/android/media/RemoteDisplay.java:20
error: frameworks/base/media/java/android/media/RemoteDisplay.java: patch does not apply
error: patch failed: frameworks/base/services/java/com/android/server/display/WifiDisplayAdapter.java:164
error: frameworks/base/services/java/com/android/server/display/WifiDisplayAdapter.java: patch does not apply
error: patch failed: frameworks/base/services/java/com/android/server/display/WifiDisplayController.java:104
error: frameworks/base/services/java/com/android/server/display/WifiDisplayController.java: patch does not apply
Patch failed at 0001 support screen record
When you have resolved this problem run "git am --resolved".
If you would prefer to skip this patch, instead run "git am --skip".
To restore the original branch and stop patching run "git am --abort".
【 git怎樣刪除未監視的文件untracked files】
# 刪除 untracked files
git clean -f
# 連 untracked 的目錄也一塊兒刪掉
git clean -fd
# 連 gitignore 的untrack 文件/目錄也一塊兒刪掉 (慎用,通常這個是用來刪掉編譯出來的 .o之類的文件用的)
git clean -xfd
# 在用上述 git clean 前,牆裂建議加上 -n 參數來先看看會刪掉哪些文件,防止重要文件被誤刪
git clean -nxfd
git clean -nf
git clean -nfd
git 撤銷commit
博客分類: git
gitcommit撤銷
若是不當心commit了一個不須要commit的文件,能夠對其進行撤銷。
先使用git log 查看 commit日誌
Python代碼 收藏代碼
commit 422bc088a7d6c5429f1d0760d008d86c505f4abe
Author: zhyq0826 <zhyq0826@gmail.com>
Date: Tue Sep 4 18:19:23 2012 +0800
刪除最近搜索數目限制
commit 8da0fd772c3acabd6e21e85287bdcfcfe8e74c85
Merge: 461ac36 0283074
Author: zhyq0826 <zhyq0826@gmail.com>
Date: Tue Sep 4 18:16:09 2012 +0800
找到須要回退的那次commit的 哈希值,
git reset --hard commit_id
app