问题列表 - 第47069页

将一个PHP项目从Git部署到没有安装Git的服务器

我需要找到一种方法,将存储在git repo中的PHP项目部署到没有安装git的登台和生产服务器.到目前为止我发现的脚本(即Capistrano)需要在目标服务器上使用Git.

不幸的是,我的主机不允许这样,到目前为止唯一的方法是通过标准FTP,我不断丢失文件.这使得不专业的外观.

我希望能够从我的本地git repo进行部署,它将检查目标上的.git文件夹以查看其中的版本,然后使目标服务器备份当前版本,然后仅使用更改来覆盖它正在推送的文件.

PHP中最好带有Web界面的东西.

我问的不多;)

那里的任何人都有这样的东西吗?

php git deployment web-deployment-project

11
推荐指数
1
解决办法
6146
查看次数

如何在SQL中使用标量值函数中的case语句?

我想使用case语句从函数中获取一个值.我尝试了以下但它不起作用:

CREATE FUNCTION [FATMS].[fnReturnByPeriod]
(

    @Period INT

)
RETURNS int
AS
BEGIN

    SELECT CASE @Period 
             when 1 then 1
             when @Period >1 and @Period <=7 then 1
             when @Period >7 and @Period <=30 then 1
             when @Period >30 and @Period<=90 then 1
             when @Period >90 and @Period <=180 then 1
             when @Period >180 and @Period <=360 then 1
             else 0
           END

    RETURN @Period
END
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server sql-server-2008

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

设计一个线程安全的可复制类

使类线程安全的直接方法是添加互斥锁属性并在访问器方法中锁定互斥锁

class cMyClass {
  boost::mutex myMutex;
  cSomeClass A;
public:
  cSomeClass getA() {
    boost::mutex::scoped_lock lock( myMutex );
    return A;
  }
};
Run Code Online (Sandbox Code Playgroud)

问题是这使得该类不可复制.

我可以通过使互斥锁成为静态来使事情发挥作用.但是,这意味着当访问任何其他实例时,类的每个实例都会阻塞,因为它们都共享相同的互斥锁.

我想知道是否有更好的方法?

我的结论是没有更好的方法.使用私有静态互斥锁属性创建一个线程安全的类是"最好的": - 它很简单,它有效,它隐藏了尴尬的细节.

class cMyClass {
  static boost::mutex myMutex;
  cSomeClass A;
public:
  cSomeClass getA() {
    boost::mutex::scoped_lock lock( myMutex );
    return A;
  }
};
Run Code Online (Sandbox Code Playgroud)

缺点是类的所有实例共享相同的互斥锁,因此不必要地相互阻塞.这不能通过使互斥属性非静态(因此为每个实例赋予其自己的互斥锁)来解决,因为如果正确完成,复制和赋值的复杂性是噩梦般的.

如果需要,各个互斥锁必须由外部不可复制的单例管理,并在创建时为每个实例建立链接.


感谢所有的回复.

有几个人提到编写我自己的复制构造函数和赋值运算符.我试过这个.问题是我的真正的类具有许多在开发期间总是在变化的属性.维护复制构造函数和assignmet运算符是繁琐且容易出错的,错误导致难以发现错误.让编译器为复杂类生成这些是一个巨大的节省时间和bug减少器.


许多响应都关注使复制构造函数和赋值运算符是线程安全的.这个要求为整个事情增加了更多的复杂性!幸运的是,我不需要它,因为所有复制都是在单个线程中进行设置时完成的.


我现在认为最好的方法是构建一个小类来保存互斥锁和关键属性.然后我可以为关键类编写一个小的复制构造函数和赋值运算符,并让编译器来管理主类中的所有其他属性.

class cSafe {
  boost::mutex myMutex;
  cSomeClass A;
public:
  cSomeClass getA() {
    boost::mutex::scoped_lock lock( myMutex );
    return A;
  }
  (copy constructor)
  (assignment op )

};
class cMyClass …
Run Code Online (Sandbox Code Playgroud)

c++ boost-thread

9
推荐指数
1
解决办法
5396
查看次数

CSS 100%高度,绝对定位顶部0底部0

我最近发现一个网站使用了一个绝对位置的div,并且top,left,right和bottom值都设置为0.这创建了一个100%高,100%宽的div.我现在也在使用它,并且想知道是否有任何理由不这样做?

它工作得很好,这是一个简单的解决方案,而我使用的另一种方式有一个我无法解决的错误.我正在使用它的应用程序应该只占用浏览器窗口,并且永远不需要更大.

html css

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

使用jsfl批量重命名flash库项目

版本flash cs5

好的,所以我知道重命名所有选定的库项目的通用代码

var items = fl.getDocumentDOM().library.getSelectedItems();
for (var i=0; i<items.length; i++){
var item = items[i];
item.name = "ABC_"+item.name;
}
Run Code Online (Sandbox Code Playgroud)

但如果库项目在文件夹中,这还不够好...因为item.name返回完整路径,但item.name设置名称.oO正如其他人在此指出的那样,http://forums.adobe.com/message/107718

  • 所以当我尝试将Level1重命名为ABC_Level1时
  • 如果Level1的文件夹路径是LIBRARY/FolderA/FolderB/Level1
  • 我得到了这个
  • ABC_FolderA-FolderB中-1级

我可能会编写某种类似的字符串解析器,

item.name ="ABC _"+ item.name.substr(item.name.lastIndexOf(" - "),99)

但这真的很难看,如果库项目已经包含" - ",那就行不通了.例如"Level-1"

所以我想我希望的是一种不同的方式来访问的名称,返回只是名称和不路径

flash rename jsfl

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

如何在运行时无限次添加新对象?

假设我在屏幕上有一个标签和一个按钮.当用户按下按钮时,它会在已经存在的标签下方生成新标签,并且可以无限次地执行此操作.

我不需要代码来建立新职位.我只是想知道如何添加新标签?我可以用一堆与它相关的变量做同样的事情,比如说创建一些NSStrings吗?

iphone cocoa-touch runtime objective-c

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

没有为IE7和IE8提供CSS

是否有一种简单的方法可以为IE7和IE8的每个现代浏览器提供整个样式表?某种倒置的条件评论?

html css internet-explorer

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

Zend Framework Bootstrap功能从何处获取

我发现在Zend Framework应用程序中的Bootstrap类中使用了许多函数,例如:

_initRoute()
_initLocale()
_initLayout()
.......
Run Code Online (Sandbox Code Playgroud)

但我搜索它的参考,但我什么都不喜欢

Zend_Application_Bootstrap_BootstrapAbstract
Zend_Application_Bootstrap_Bootstrap
Run Code Online (Sandbox Code Playgroud)

它们都不包含任何这些功能.

我在哪里可以找到这些功能的完整参考?

bootstrapping zend-framework

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

自定义授权属性

我正在构建自己的会员系统,我想要与MS会员提供商无关.我查看了互联网和StackOverflow,但我所能找到的只是建立在MS会员提供商之上的会员提供商.

无论如何,我现在几乎所有东西都挂了,但我想使用自定义的Authorize属性来利用我的会员基础设施.我在网站上查看了这个帖子,我正在尝试做类似的事情,但我不确定我需要的是什么.到目前为止,这些是我得到的课程:

SessionManager:

public static class SessionManager : ISessionManager
{
    public static void RegisterSession(string key, object obj)
    {
        System.Web.HttpContext.Current.Session[key] = obj;
    }

    public static void FreeSession(string key)
    {
        System.Web.HttpContext.Current.Session[key] = null;
    }


    public static bool CheckSession(string key)
    {
        if (System.Web.HttpContext.Current.Session[key] != null)
            return true;
        else
            return false;
    }


    public static object ReturnSessionObject(string key)
    {
        if (CheckSession(key))
            return System.Web.HttpContext.Current.Session[key];
        else
            return null;
    }
}
Run Code Online (Sandbox Code Playgroud)

SharweAuthorizeAttribute: (我真的不知道,如果这确实是我应该做的事)

public class SharweAuthorizeAttribute : AuthorizeAttribute
{
    protected override bool AuthorizeCore(HttpContextBase httpContext) …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc asp.net-membership asp.net-mvc-3

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

static_assert 中的 decltype

为什么类定义中的 this (static_assert) 不起作用?

template<class IntT, IntT low = IntT(), IntT high = IntT()>
struct X 
{
    static_assert(std::is_same<decltype(low),decltype(high)>::value,"Different types not allowed");
};



int _tmain(int argc, _TCHAR* argv[])
{
    int low, high;

    X<char,1,'a'> x;//HERE I SHOULD GET ERROR
    cout << sizeof(x);

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ static-assert decltype c++11

-8
推荐指数
1
解决办法
2357
查看次数