我想使用与我们在其他地方使用的当前版本的v8兼容的那个版本的nodejs。
我查看了“那个”v8 ChangeLog文件并显示了
> 2013-04-04: Version 3.17.16
>
> Stack trace API: poison stack frames below the first strict mode frame.
> (issue 2564)
所以我想恢复使用这个或更早版本的v8的那个版本的nodejs。
我将node.gyp文件全部deps/v8
更改为path_of_some_v8
。
然后我做了
cd path/to/node
gitk
然后从gui我选择v8: update to 3.14.5.9
并使用mixed
将主分支重置为该提交[其中说保留工作树并重置主服务器。]
然后我使用vcbuild.bat
重建节点,但我收到错误,如
type is ''unknown-type''
src\node_http_parser.cc(553): error C2664: 'v8::FunctionTemplate::New' : cannot
convert parameter 1 from 'void (__cdecl *)(const int)' to 'v8::InvocationCallb
ack' [C:\CEF\anand\chromium\chromium\src\node_2012\node\node.vcxproj]
Incompatible calling conventions for UDT return value
src\node_http_parser.cc(570): error C2660: 'node::NODE_SET_PROTOTYPE_METHOD' :
function does not take 3 arguments [C:\CEF\anand\chromium\chromium\src\node_201
2\node\node.vcxproj]
src\node_http_parser.cc(571): error C2660: 'node::NODE_SET_PROTOTYPE_METHOD' :
function does not take 3 arguments [C:\CEF\anand\chromium\chromium\src\node_201
2\node\node.vcxproj]
src\node_http_parser.cc(572): error C2660: 'node::NODE_SET_PROTOTYPE_METHOD' :
function does not take 3 arguments [C:\CEF\anand\chromium\chromium\src\node_201
2\node\node.vcxproj]
我的方法是还原代码是对的吗?我应该用旧版本的v8构建节点?
答案 0 :(得分:0)
git reset --mixed
将保持工作目录中的文件不变(您实际构建的文件)。如果要使用重置,git reset --hard <commit>
也将更改工作目录中的文件。
我建议你做git checkout <commit>
。这会使您进入一个独立的头部,不会移动您的分支,并且仍然允许您在该点查看/构建代码。有关分离头部的详细解释,请参阅https://stackoverflow.com/a/5772882/1049112。