Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > УП: Инструменты > git diff находит изменения сразу после git clone


Автор: SQReder 5.8.2012, 18:27
Здравствуйте уважаемые!
С некоторых пор git начал считать, что файлы, в которых не было никаких изменений на самом деле изменены.
Воспроизводится так. Клонирую свой проект с https://github.com/SQReder/SimplePluginCore/. Открываю реп и вуаля! Три файла уже считаются полностью переписанными!

Код

C:\qt> git clone https://github.com/SQReder/SimplePluginCore.git
Cloning into 'SimplePluginCore'...
remote: Counting objects: 143, done.
remote: Compressing objects: 100% (87/87), done.
remote: Total 143 (delta 72), reused 122 (delta 51)
Receiving objects: 100% (143/143), 24.18 KiB, done.
Resolving deltas: 100% (72/72), done.

C:\qt> cd .\SimplePluginCore

C:\qt\SimplePluginCore [master +0 ~3 -0]> git diff > diff

C:\qt\SimplePluginCore [master +1 ~3 -0 !]> cat .\diff
diff --git a/src/BasicPlugin/BasicPlugin.cpp b/src/BasicPlugin/BasicPlugin.cpp
index 0689c84..da9d194 100644
--- a/src/BasicPlugin/BasicPlugin.cpp
+++ b/src/BasicPlugin/BasicPlugin.cpp
@@ -1,47 +1,47 @@
-#include <QtCore/QtPlugin>
-#include <QString>
-#include <QMap>
-
-#include "BasicPlugin.h"
-#include "Concat.h"
-
-QString BasicPlugin::getPluginId() const {
-    return "BasicPlugin";
-}
-
-QStringList BasicPlugin::getPluginMethods() const {
-    QStringList methodNames;
-    methodNames << "Concat";
-
-    QString pluginId = getPluginId();
-    for(QStringList::iterator methodName = methodNames.begin();
-                              methodName != methodNames.end();
-                              ++methodName) {
-        *methodName = pluginId + "." + *methodName;
-    }
-
-    return methodNames;
-}
-
-void* BasicPlugin::Call(PluginMethosName methodName, const void* param) {
-    QString (*n)(const QString&);
-    n = &ConcatFunc;
-
-    return MethodWrapper(&ConcatFunc, param);
-}
-
-template<class ParamType, class ReturnType>
-void* PluginInterface::MethodWrapper(ReturnType (*methodPtr)(const ParamType&),
-                                     const void* param) {
-    // ╨║╨░╤Б╤В╤Г╨╡╨╝ ╨┐╨░╤А╨░╨╝╨╡╤В╤А╤Л ╨▓ ╨╜╤Г╨╢╨╜╤Л╨╣ ╤В╨╕╨┐ ╨╕ ╤А╨░╨╖╤Л╨╝╨╡╨╜╨╛╨▓╤Л╨▓╨░╨╡╨╝ ╤Г╨║╨░╨╖╨░╤В╨╡╨╗╤М
-    const ParamType* methodParamPtr = reinterpret_cast<const ParamType*>(param);
-    ParamType methodParam = *methodParamPtr;
-
-    // ╨▓╤Л╨╖╤Л╨▓╨░╨╡╨╝ ╤Б╨╛╨▒╤Б╤В╨▓╨╡╨╜╨╜╨╛ ╤Д╤Г╨╜╨║╤Ж╨╕╤О, ╤Б╨╛╤Е╤А╨░╨╜╤П╤П ╤А╨╡╨╖╤Г╨╗╤М╤В╨░╤В
-    ReturnType result = methodPtr(methodParam);
-
-    // ╨╕ ╨▓╨╛╨╖╨▓╤А╨░╤Й╨░╨╡╨╝ ╤А╨╡╨╖╤Г╨╗╤М╤В╨░╤В, ╨╛╨▒╤П╨╖╨░╤В╨╡╨╗╤М╨╜╨╛ ╨▓ ╨╜╨╛╨▓╨╛╨╝ ╤Н╨║╨╖╨╡╨╝╨┐╨╗╤П╤А╨╡ ╨║╨╗╨░╤Б╤
Б╨░.
-    return reinterpret_cast<void*>(new ReturnType(result));
-}
-
-Q_EXPORT_PLUGIN2(basicplugin, BasicPlugin)
+#include <QtCore/QtPlugin>
+#include <QString>
+#include <QMap>
+
+#include "BasicPlugin.h"
+#include "Concat.h"
+
+QString BasicPlugin::getPluginId() const {
+    return "BasicPlugin";
+}
+
+QStringList BasicPlugin::getPluginMethods() const {
+    QStringList methodNames;
+    methodNames << "Concat";
+
+    QString pluginId = getPluginId();
+    for(QStringList::iterator methodName = methodNames.begin();
+                              methodName != methodNames.end();
+                              ++methodName) {
+        *methodName = pluginId + "." + *methodName;
+    }
+
+    return methodNames;
+}
+
+void* BasicPlugin::Call(PluginMethosName methodName, const void* param) {
+    QString (*n)(const QString&);
+    n = &ConcatFunc;
+
+    return MethodWrapper(&ConcatFunc, param);
+}
+
+template<class ParamType, class ReturnType>
+void* PluginInterface::MethodWrapper(ReturnType (*methodPtr)(const ParamType&),
+                                     const void* param) {
+    // ╨║╨░╤Б╤В╤Г╨╡╨╝ ╨┐╨░╤А╨░╨╝╨╡╤В╤А╤Л ╨▓ ╨╜╤Г╨╢╨╜╤Л╨╣ ╤В╨╕╨┐ ╨╕ ╤А╨░╨╖╤Л╨╝╨╡╨╜╨╛╨▓╤Л╨▓╨░╨╡╨╝ ╤Г╨║╨░╨╖╨░╤В╨╡╨╗╤М
+    const ParamType* methodParamPtr = reinterpret_cast<const ParamType*>(param);
+    ParamType methodParam = *methodParamPtr;
+
+    // ╨▓╤Л╨╖╤Л╨▓╨░╨╡╨╝ ╤Б╨╛╨▒╤Б╤В╨▓╨╡╨╜╨╜╨╛ ╤Д╤Г╨╜╨║╤Ж╨╕╤О, ╤Б╨╛╤Е╤А╨░╨╜╤П╤П ╤А╨╡╨╖╤Г╨╗╤М╤В╨░╤В
+    ReturnType result = methodPtr(methodParam);
+
+    // ╨╕ ╨▓╨╛╨╖╨▓╤А╨░╤Й╨░╨╡╨╝ ╤А╨╡╨╖╤Г╨╗╤М╤В╨░╤В, ╨╛╨▒╤П╨╖╨░╤В╨╡╨╗╤М╨╜╨╛ ╨▓ ╨╜╨╛╨▓╨╛╨╝ ╤Н╨║╨╖╨╡╨╝╨┐╨╗╤П╤А╨╡ ╨║╨╗╨░╤Б╤
Б╨░.
+    return reinterpret_cast<void*>(new ReturnType(result));
+}
+
+Q_EXPORT_PLUGIN2(basicplugin, BasicPlugin)
diff --git a/src/BasicPlugin/Concat.cpp b/src/BasicPlugin/Concat.cpp
index ed40e5c..a701f7f 100644
--- a/src/BasicPlugin/Concat.cpp
+++ b/src/BasicPlugin/Concat.cpp
@@ -1,24 +1,24 @@
-#include <QObject>
-#include "Concat.h"
-
-//QString ConcatDescription()
-//{
-//    return "string concatenation";
-//}
-
-//void* ConcatWrapper(const void* param) {
-//    // ╨║╨░╤Б╤В╤Г╨╡╨╝ ╨┐╨░╤А╨░╨╝╨╡╤В╤А╤Л ╨▓ ╨╜╤Г╨╢╨╜╤Л╨╣ ╤В╨╕╨┐ ╨╕ ╤А╨░╨╖╤Л╨╝╨╡╨╜╨╛╨▓╤Л╨▓╨░╨╡╨╝ ╤Г╨║╨░╨╖╨░╤В╨╡╨╗╤М
-//    const QString* strPtr = reinterpret_cast<const QString*>(param);
-//    QString str = *strPtr;
-
-//    // ╨▓╤Л╨╖╤Л╨▓╨░╨╡╨╝ ╤Б╨╛╨▒╤Б╤В╨▓╨╡╨╜╨╜╨╛ ╤Д╤Г╨╜╨║╤Ж╨╕╤О, ╤Б╨╛╤Е╤А╨░╨╜╤П╤П ╤А╨╡╨╖╤Г╨╗╤М╤В╨░╤В
-//    QString result = ConcatFunc(str, str);
-
-//    // ╨╕ ╨▓╨╛╨╖╨▓╤А╨░╤Й╨░╨╡╨╝ ╤А╨╡╨╖╤Г╨╗╤М╤В╨░╤В, ╨╛╨▒╤П╨╖╨░╤В╨╡╨╗╤М╨╜╨╛ ╨▓ ╨╜╨╛╨▓╨╛╨╝ ╤Н╨║╨╖╨╡╨╝╨┐╨╗╤П╤А╨╡ ╨║╨╗╨░╤
Б╤Б╨░.
-//    return reinterpret_cast<void*>(new QString(result));
-//}
-
-QString ConcatFunc(const QString& one)
-{
-    return one + "+" + one;
-}
+#include <QObject>
+#include "Concat.h"
+
+//QString ConcatDescription()
+//{
+//    return "string concatenation";
+//}
+
+//void* ConcatWrapper(const void* param) {
+//    // ╨║╨░╤Б╤В╤Г╨╡╨╝ ╨┐╨░╤А╨░╨╝╨╡╤В╤А╤Л ╨▓ ╨╜╤Г╨╢╨╜╤Л╨╣ ╤В╨╕╨┐ ╨╕ ╤А╨░╨╖╤Л╨╝╨╡╨╜╨╛╨▓╤Л╨▓╨░╨╡╨╝ ╤Г╨║╨░╨╖╨░╤В╨╡╨╗╤М
+//    const QString* strPtr = reinterpret_cast<const QString*>(param);
+//    QString str = *strPtr;
+
+//    // ╨▓╤Л╨╖╤Л╨▓╨░╨╡╨╝ ╤Б╨╛╨▒╤Б╤В╨▓╨╡╨╜╨╜╨╛ ╤Д╤Г╨╜╨║╤Ж╨╕╤О, ╤Б╨╛╤Е╤А╨░╨╜╤П╤П ╤А╨╡╨╖╤Г╨╗╤М╤В╨░╤В
+//    QString result = ConcatFunc(str, str);
+
+//    // ╨╕ ╨▓╨╛╨╖╨▓╤А╨░╤Й╨░╨╡╨╝ ╤А╨╡╨╖╤Г╨╗╤М╤В╨░╤В, ╨╛╨▒╤П╨╖╨░╤В╨╡╨╗╤М╨╜╨╛ ╨▓ ╨╜╨╛╨▓╨╛╨╝ ╤Н╨║╨╖╨╡╨╝╨┐╨╗╤П╤А╨╡ ╨║╨╗╨░╤
Б╤Б╨░.
+//    return reinterpret_cast<void*>(new QString(result));
+//}
+
+QString ConcatFunc(const QString& one)
+{
+    return one + "+" + one;
+}
diff --git a/src/Core/PluginInterface.cpp b/src/Core/PluginInterface.cpp
index f5f8c6f..394a84d 100644
--- a/src/Core/PluginInterface.cpp
+++ b/src/Core/PluginInterface.cpp
@@ -1,19 +1,19 @@
-#include "PluginInterface.h"
-
-void PluginInterface::SetCoreCallback(CoreCallbackFunc callback) {
-    CallCoreFunction = callback;
-}
-
-template<class ParamType, class ReturnType>
-void* PluginInterface::MethodWrapper(ReturnType (*methodPtr)(const ParamType&),
-                                     const void *param) {
-    // ╨║╨░╤Б╤В╤Г╨╡╨╝ ╨┐╨░╤А╨░╨╝╨╡╤В╤А╤Л ╨▓ ╨╜╤Г╨╢╨╜╤Л╨╣ ╤В╨╕╨┐ ╨╕ ╤А╨░╨╖╤Л╨╝╨╡╨╜╨╛╨▓╤Л╨▓╨░╨╡╨╝ ╤Г╨║╨░╨╖╨░╤В╨╡╨╗╤М
-    const ParamType* methodParamPtr = reinterpret_cast<const ParamType*>(param);
-    ParamType methodParam = *methodParamPtr;
-
-    // ╨▓╤Л╨╖╤Л╨▓╨░╨╡╨╝ ╤Б╨╛╨▒╤Б╤В╨▓╨╡╨╜╨╜╨╛ ╤Д╤Г╨╜╨║╤Ж╨╕╤О, ╤Б╨╛╤Е╤А╨░╨╜╤П╤П ╤А╨╡╨╖╤Г╨╗╤М╤В╨░╤В
-    ReturnType result = methodPtr(methodParam);
-
-    // ╨╕ ╨▓╨╛╨╖╨▓╤А╨░╤Й╨░╨╡╨╝ ╤А╨╡╨╖╤Г╨╗╤М╤В╨░╤В, ╨╛╨▒╤П╨╖╨░╤В╨╡╨╗╤М╨╜╨╛ ╨▓ ╨╜╨╛╨▓╨╛╨╝ ╤Н╨║╨╖╨╡╨╝╨┐╨╗╤П╤А╨╡ ╨║╨╗╨░╤Б╤
Б╨░.
-    return reinterpret_cast<void*>(new ReturnType(result));
-}
+#include "PluginInterface.h"
+
+void PluginInterface::SetCoreCallback(CoreCallbackFunc callback) {
+    CallCoreFunction = callback;
+}
+
+template<class ParamType, class ReturnType>
+void* PluginInterface::MethodWrapper(ReturnType (*methodPtr)(const ParamType&),
+                                     const void *param) {
+    // ╨║╨░╤Б╤В╤Г╨╡╨╝ ╨┐╨░╤А╨░╨╝╨╡╤В╤А╤Л ╨▓ ╨╜╤Г╨╢╨╜╤Л╨╣ ╤В╨╕╨┐ ╨╕ ╤А╨░╨╖╤Л╨╝╨╡╨╜╨╛╨▓╤Л╨▓╨░╨╡╨╝ ╤Г╨║╨░╨╖╨░╤В╨╡╨╗╤М
+    const ParamType* methodParamPtr = reinterpret_cast<const ParamType*>(param);
+    ParamType methodParam = *methodParamPtr;
+
+    // ╨▓╤Л╨╖╤Л╨▓╨░╨╡╨╝ ╤Б╨╛╨▒╤Б╤В╨▓╨╡╨╜╨╜╨╛ ╤Д╤Г╨╜╨║╤Ж╨╕╤О, ╤Б╨╛╤Е╤А╨░╨╜╤П╤П ╤А╨╡╨╖╤Г╨╗╤М╤В╨░╤В
+    ReturnType result = methodPtr(methodParam);
+
+    // ╨╕ ╨▓╨╛╨╖╨▓╤А╨░╤Й╨░╨╡╨╝ ╤А╨╡╨╖╤Г╨╗╤М╤В╨░╤В, ╨╛╨▒╤П╨╖╨░╤В╨╡╨╗╤М╨╜╨╛ ╨▓ ╨╜╨╛╨▓╨╛╨╝ ╤Н╨║╨╖╨╡╨╝╨┐╨╗╤П╤А╨╡ ╨║╨╗╨░╤Б╤
Б╨░.
+    return reinterpret_cast<void*>(new ReturnType(result));
+}

Автор: bilbobagginz 11.8.2012, 08:21
похоже на виндузятинские заморочки с переходом на новую строку:
https://help.github.com/articles/dealing-with-line-endings

Автор: mstalker26 8.10.2012, 17:41
больше похоже на filemode (permissions). Если для ТС это еще актуально, то

Код

git config core.filemode false

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)