小编Col*_*ett的帖子

Git生产/登台服务器工作流程

目前我的网站(生产服务器)已经有很多代码.现在我想开始为我的项目使用Git并为我的团队设置一个临时服务器.任何人都可以给我任何建议吗?

这是我脑海中的画面:

        Production        - Production server which already have codes
            ?             
         Staging          - New staging server, will install Trac too
         ?? ??          
  Developer1  Developer2  - Local development 
Run Code Online (Sandbox Code Playgroud)

我的问题是,我应该如何开始?

以下是我的一些步骤:

  1. git init在生产服务器上做(这样安全吗?)
  2. clone 从生产到登台服务器的repo
  3. 开发人员clone从登台到本地机器的回购
  4. push 完成更改后,文件到登台服务器
  5. 当分段准备就绪时,push一切都要生产

这项工作流程是否有意义,或者有更好的方法可以做到这一点?

如果我只想更改一个文件怎么办?

origin/master在这个过程中是否与它有关?谁是起源?我最终会有多个起源吗?

此外,branch在这种情况下,开发人员何时应该使用?

git production staging dev-to-production

107
推荐指数
2
解决办法
3万
查看次数

Eclipse导入项目错误,重叠工作区位置

我有一个大项目,我想导入Eclipse,但每次我这样做,我得到:

Invalid project description.
  D:\svn\myproject\vr overlaps the workspace location: D:\svn\myproject\vr
Run Code Online (Sandbox Code Playgroud)

我还重新安装了Eclipse,然后将我的工作区设置为程序所在的位置,然后我选择导入项目并始终得到此错误.

有人有解决方案吗?难道我做错了什么?

谢谢.

eclipse

39
推荐指数
4
解决办法
5万
查看次数

我应该在C++中为成员变量和函数参数使用相同的名称

我想知道在C++中为成员变量和函数参数使用相同的名称是否是一个好习惯.我来自Java背景,这很常见.我想知道在C++中是否有缺点做以下(代码工作):

class Player
{
    public:
    void setState(PlayerState *state)
    {
        this->state = state;
    }

    private:
       PlayerState *state;
}
Run Code Online (Sandbox Code Playgroud)

谢谢你的答案.据我了解,虽然它有效,但更好的做法是使用某种标记来区分成员变量和函数参数,例如:

 _ or m_
Run Code Online (Sandbox Code Playgroud)

在某些编辑器(如Qt Designer)中,成员变量以不同的颜色显示.这就是为什么似乎没有必要添加任何前缀.

c++ parameters

22
推荐指数
2
解决办法
1万
查看次数

如何让node-gyp在Windows 7平台上运行

在尝试编译标准的"Hello World"示例[2]时,我尝试在Windows 7 + Node.js平台上使用node-gyp失败[3].注意:当尝试npm install contextifyw或没有"-g"时,node-gyp以类似的方式失败[3] ,因此这些可能是相关的问题.

组态:

  • node-gyp 0.12.2
  • Windows 7 x64 SP1
  • Python 2.7
  • Node.js 0.10.24
  • Visual Studio 2010 per [1](也尝试过2012)
  • 每个[1] VS SDK 7.1(尝试过32位和64位版本)
  • 从标准Windows命令提示符或SDK7.1 cmd提示符运行node-gyp

参考文献:
[1] https://github.com/TooTallNate/node-gyp/wiki/Visual-Studio-2010-Setup

[2] https://github.com/joyent/node/tree/master/test/addons/hello-world

[3]"hello world"[2]项目中的"node-gyp rebuild"产生以下2个错误:

.... node-gyp\0.10.24\deps\uv\include\win.h(8738):错误C2371:'SYSTEM_POWER_STATUS':重新定义; 不同的基本类型[...\build\test.vcxproj]

.... node-gyp\0.10.24\deps\uv\include\mswsock.h(27):致命错误C 1083:无法打开包含文件:'_mingw.h':没有这样的文件或目录[... \编译\ test.vcxproj]

以及2个警告:

.... node-gyp\0.10.24\deps\uv\include\win.h(13513):警告C4005:'UNALIGNED':宏重新定义[...\build\test.vcxproj]

.... node-gyp\0.10.24\deps\uv\include\mswsock.h(26):警告C4068:未知的编译指示[...\build\test.vcxproj]

完整的跟踪如下:

C:\sigma\node_modules\x>node-gyp rebuild
gyp info it worked if it ends with ok
gyp info using node-gyp@0.12.2
gyp info using node@0.10.24 | win32 | x64
gyp info spawn …
Run Code Online (Sandbox Code Playgroud)

windows visual-studio-2010 node.js node-gyp contextify

16
推荐指数
1
解决办法
2万
查看次数

在PHP中,什么是二进制字符串(b'xxxx')?

是什么b''("二进制串")在PHP语句的意思$str=b'xxxxxx';

php

15
推荐指数
3
解决办法
8203
查看次数

是否有适用于x86的开源实时操作系统?

那里有没有开源的实时操作系统?我听说过实时Linux,但大多数实现似乎都是一个专有的RTOS(你需要付费),它将Linux作为一个过程运行 - 就像Ardence的RTX实时系统适用于Windows一样.

编辑:我应该澄清一点,我正在寻找RTOS来使用多核x86系列CPU.

x86 open-source x86-64 rtos

14
推荐指数
2
解决办法
9779
查看次数

如何在Linux中使用Google Protobufs确保相同的输出文件(*.o)

当应用程序准备好部署时,我在一个需要可重复构建过程的行业中工作.我最近继承了一个迄今为止一直在开发的应用程序.此应用程序在Linux平台上运行,并使用Google Protocol Buffers(版本2.4.1).遗憾的是,构建过程不可重复,但我已经将协议缓冲区文件生成的输出文件作为应用程序中唯一性的来源(使用md5sum).除了几行之外,.o文件大致相同.

我使用与protobuf版本一起分发的地址簿示例重复了该过程..o文件的差异如下所示.每次生成.o文件时,"878197C9XX"编号都会改变.我想要一个可重复的过程,所以它们总是一样的.

_GLOBAL__I__ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_878197C918Person_descriptor_E
_ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_878197C918Person_reflection_E
_ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_878197C930Person_PhoneNumber_reflection_E
_ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_878197C923AddressBook_reflection_E
_ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_878197C930protobuf_AssignDescriptorsOnceE
_ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_878197C932protobuf_AssignDescriptors_once_E
_ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_878197C923AddressBook_descriptor_E
_ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_878197C918Person_descriptor_E
_ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_878197C930Person_PhoneNumber_descriptor_E
_ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_878197C928Person_PhoneType_descriptor_E
Run Code Online (Sandbox Code Playgroud)

这是第二次运行:

_GLOBAL__I__ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_75C23E1E18Person_descriptor_E
_ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_75C23E1E18Person_reflection_E
_ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_75C23E1E30Person_PhoneNumber_reflection_E
_ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_75C23E1E23AddressBook_reflection_E
_ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_75C23E1E30protobuf_AssignDescriptorsOnceEv
_ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_75C23E1E32protobuf_AssignDescriptors_once_E
_ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_75C23E1E23AddressBook_descriptor_E
_ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_75C23E1E18Person_descriptor_E
_ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_75C23E1E30Person_PhoneNumber_descriptor_E
_ZN8tutorial46_GLOBAL__N_addressbook.pb.cc_00000000_75C23E1E28Person_PhoneType_descriptor_E
Run Code Online (Sandbox Code Playgroud)

我用来创建.o文件的步骤如下.

从protobuf-2.4.1/examples目录中的addressbook.proto文件开始,使用../bin/protoc --cpp_out =生成addressbook.pb.cc和adressbook.pb.h文件.addressbook.proto..cc和.h文件的md5sum始终相同.

当使用g ++(gcc版本4.1.2 20080704,Red Hat 4.1.2-54)编译.cc/.h文件时,输出文件始终是唯一的.用于g ++的命令是g ++ -m32 -march = i686 -c -I ../src/ addressbook.pb.cc -o addressbook.o.

任何建议或想法将不胜感激.谢谢.

c++ linux gcc name-mangling protocol-buffers

4
推荐指数
1
解决办法
169
查看次数

返回并返回Vim netrw文件列表中的相同位置?

当使用Vim和内置的netrw文件浏览支持浏览本地目录时,我想打开一个文件来查看它,然后在打开文件之前返回到文件列表中的相同位置.

我通常浏览文件的方法是通过按下Enternetrw 打开一个文件,然后当我看完文件后,我想返回到文件列表,我按Ctrl+o回到netrw视图,但是光标总是回到文件列表的顶部,这在浏览典型目录时非常不方便.我想回到文件列表中的同一位置,当我按Enter键打开文件时.

我知道我可以通过按下onetrw文件列表视图在分割窗口中打开文件,而不是按Enter在同一窗口中打开它,但我不想拆分视图:我想要使用整个视图对于该文件,直到我完成查看它,然后我想回到文件列表中的相同位置以可能打开列表中的下一个文件.

vim netrw

3
推荐指数
1
解决办法
1379
查看次数

如何将字符串中的大整数转换为uint64_t?

我有一个存储为字符串的大整数.我需要将它转换为整数(uint64_t).我试过了stoi(),但是在抛出一个实例后它崩溃了std::out_of_range.

该字符串的最大值为64位整数值,最大值为18,446,744,073,709,551,615(无符号long int的最大值).

除了(当然)手动之外我该怎么做?

c++ string

0
推荐指数
1
解决办法
1813
查看次数