在我的大多数项目中,个人或团体,我发现我只使用版本控制来简单地提取最新的更改并发布我自己的代码.
但是,我知道版本控制还有很多,分支和其他强大的功能我不使用.
有人能给我一些关于如何以更强大的方式使用版本控制的建议吗?
我主要讨论的版本控制系统是SVN和Git.
我的托管服务提供商说我的python脚本必须是可执行的(chmod755).这是什么意思?我该怎么办?
干杯!
我正在使用以下函数来计算VS2008,.NET 3.5项目中文件的CRC32:
public UInt32 ComputeHash(System.IO.Stream stream)
{
unchecked
{
const int BUFFER_SIZE = 1024;
UInt32 crc32Result = 0xFFFFFFFF;
byte[] buffer = new byte[BUFFER_SIZE];
int count = stream.Read(buffer, 0, BUFFER_SIZE);
while (count > 0)
{
for (int i = 0; i < count; i++)
{
crc32Result = ((crc32Result) >> 8) ^ _crc32Table[(buffer[i]) ^ (crc32Result) & _LOOKUP_TABLE_MAX_INDEX];
}
count = stream.Read(buffer, 0, BUFFER_SIZE);
}
return ~crc32Result;
}
}
Run Code Online (Sandbox Code Playgroud)
为简洁起见,我遗漏了构建查找表(_crc32Table)的函数.该表是一个UInt32数组,是在实例化类时构建的,包含256个值(256也是_LOOKUP_TABLE_MAX_INDEX + 1的值).
我已经运行了一些基准测试,将它与MD5CryptoServiceProvider和SHA1CryptoServiceProvider ComputeHash函数进行比较,它们的速度要快得多.MD5功能的速度提高了两倍,SHA1哈希的速度提高了约35%.我被告知CRC32很快,但那不是我所看到的.
我错误地假设了吗?这是预期的还是这个算法有缺陷?
我正在使用LAMP服务器,我需要重定向请求,如:
www.www.example.com到www.example.com和其他变体如(wwww.example.com等)
我知道我可以在.htaccess中完成它,但我不知道我应该用它来表示所有这些可能性的正则表达式.
或者有什么不同的方法,来自虚拟主机?
软件:Mac OS X 10.5.8上的VMWare Fusion 2.05(也适用于Vista上的VMWare Workstation 6.5.2,用于验证问题)访客:Ubuntu Server 9.04(也适用于Ubuntu Desktop 9.04,用于修复问题) )VMWare网络:桥接路由器:Apple TimeCapsule,最新固件
问题:
在guest上成功安装Django 1.1并启动Django的内置web服务器(监听127.0.0.1:8000)之后,我通过wget 127.0.0.1:8000(以及Ubuntu Desktop 9.04上的Firefox)进行了验证,确实服务器工作正常.
但是,我无法从主机连接到Django服务器.
特别:
在桥接模式下,客户操作系统具有IP 172.16.1.6(由TimeCapsule通过DHCP分配),主机OS具有IP 172.16.1.2(由TimeCapsule通过DHCP分配).我可以从主机成功ping客户端,也可以从guest虚拟机ping主机.但是无法从主机操作系统访问端口8000上的Django服务器.
是否必须启用任何配置设置才能将Django服务器从guest虚拟机路由到主机?在Ubuntu,VMWare(工作站或Fusion),Vista或Mac OS X中?
编辑:
我找到了解决方案.在调用django-admin.py runserver时,有一个记录的可选参数ipaddr:port.将其设置为172.16.1.6(而不是默认值127.0.0.1)可以启用从guest虚拟机到主机的正确路由.
我最近离开了一所大型大学医院,因为工资增加而且因为这是一个职业助推器.当然,这两件事情通常都是令人兴奋的事情和一项伟大的成就(特别是对于我这个年纪的人)但我发现自己每天早上开车上班时都会在里面噘嘴,这就是原因所在.我加入的新t = eam在编码实践,最新技术(是的,他们仍然使用经典的.ASP)和软件方面落后很多 - 让我处于使用VS2008,.NET 3.5和SQL Server的倒退时间扭曲/ BIDS 2008使用古老的SQL 2000/VS 6.0遗物.
起初,并不是那么糟糕,我认为不是所有的公司都立即处于最前沿,只是等待正确的火花,让他们朝着改变和改进的方向发送 - 不 - 我开始建议(专业和非专业)居高临下的方式)一些新工具以及他们对我们公司在我们这边和客户方面都有什么好处,但是他们(就像在我所参与的团队中一样)看着我,就像我是一个外星人,给了我简单的,为什么我们需要那些东西,即使我已经提出了我的理由.
这让我相信我可能不会以正确的方式解决这个问题,并且希望一些更高级的开发人员/工程师在他们年轻时刚开始时分享他们的经验.我知道时代已经改变,但我觉得它仍然有用,任何建议都会非常感激!
感谢大家!
我正在为我们的网站构建一些报告内容(一个体面的网站,每天可以获得数百万的综合浏览量),我想知道是否有任何好的免费/开源数据仓库系统.
具体来说,我只寻找存储数据的东西 - 我计划为它构建一个自定义前端/ UI,以便显示我们关心的信息.但是,我不想为此构建一个自定义数据库,虽然我很确定SQL数据库在这里不起作用,但我不确定要使用什么.任何指向有用文章的指针也将受到赞赏.
编辑:我应该提一下 - 我简要介绍过的一个数据库是MongoDB.它似乎可能有用,但他们的"用例"特别提到数据仓库为"不太适合":http://www.mongodb.org/display/DOCS/Use+Cases.此外,它似乎并不专门针对数据仓库.
我试图理解C#中泛型类型参数的约束.where T : new()约束的目的是什么?为什么你需要坚持类型参数有一个公共无参数构造函数?
编辑: 我一定错过了什么.评价最高的答案表示公共无参数构造函数是实例化泛型类型所必需的.如果是这种情况,为什么这个代码编译并运行?
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
//class Foo has no public parameterless constructor
var test = new genericClass<Foo>();
}
}
class genericClass<T> where T : new()
{
T test = new T(); //yet no problem instantiating
}
class Foo
{
//no public parameterless constructor here
}
}
Run Code Online (Sandbox Code Playgroud)
编辑:在他的评论中,gabe提醒我,如果我没有定义构造函数,编译器默认提供无参数构造函数.因此,我的示例中的类Foo实际上确实有一个公共无参数构造函数.