这是情况.我在master分公司工作.我创建了file1并提交.我创建了file2并提交.哎呦.有一天,我可能想要使用file2,但绝对不应该放在master分支中.所以我不会丢失我使用的file2
git checkout head~1
git branch new-branch
git checkout new-branch
Run Code Online (Sandbox Code Playgroud)
这样我才能继续发展.我添加file3 new-branch.如果你一直在关注,我有两个分支,master包含"file1"和"file2" new-branch,包含"file1"和"file3".
现在是时候把我已经做出的改变带回主分支了.最好的方法是什么?我绝对希望master分支的负责人在它们出现时指向文件new-branch,但我也不想丢失我在file2中通过重置而完成的工作,以防我想使用它.
请记住,这是一种简化.而不是只有三个文件,我有十几个文件,其中有几十行代码被改变,所有这些都有多次提交.我当然希望解决方案不是逐个文件合并/签出,因为这将是一个巨大的痛苦.
有任何想法吗?
帮助搜索的其他标题:
在xcode6中删除"DerivedData"文件夹(或执行"Product> Clean")之后,我无法将CocoaTouch框架从另一个项目添加到"嵌入式二进制"部分(在"常规"选项卡下).
或者,Xcode遇到链接器错误,因为它无法找到以前可能的框架.
单击"嵌入式二进制文件"下的+显示框架选择器,但在工作区中选择不同项目中的框架不会执行任何操作.
我刚刚开始在我的iPhone项目中使用合成实例变量.问题是,我无法在调试器中看到合成的ivars.当没有使用显式声明的实例变量时,有没有办法在调试器中查看对象的属性?
我需要澄清第二个问题.我不是在询问如何访问属性或他们做什么; 我知道那些东西.我的印象是,在使用基于此帖子的合成ivars时,您无法直接访问实例变量.我显然能够做到我以前认为不可能的事情.我想知道发生了什么事.
我正在使用Xcode 3.2.4/iPhone模拟器/ LLVM编译器1.5.
我有这个工作代码:
NSMutableArray *shadowColors = [NSMutableArray arrayWithCapacity:2];
color = [UIColor colorWithRed:0 green:0 blue:0 alpha:1]; // Declaration using components
[shadowColors addObject:(id)[color CGColor]];
color = [UIColor colorWithRed:1 green:1 blue:1 alpha:0.0]; // Declaration using components
[shadowColors addObject:(id)[color CGColor]];
CGColorSpaceRef space = CGColorSpaceCreateDeviceRGB();
CGGradientRef gradient = CGGradientCreateWithColors(space, (CFArrayRef)shadowColors, NULL);
CGColorSpaceRelease(space);
CGFloat sw = 10.0; // shadow width
CGPoint top1 = CGPointMake(x, y+width/2.0);
CGPoint top2 = CGPointMake(x + sw, y+width/2.0);
CGPoint side1 = CGPointMake(x+width/2.0, y);
CGPoint side2 = CGPointMake(x+width/2.0, y+sw);
CGContextDrawLinearGradient(c, gradient, top1, top2, 0);
CGContextDrawLinearGradient(c, …Run Code Online (Sandbox Code Playgroud) 此代码段不起作用,我收到"身份验证失败".来自服务器的响应.有任何想法吗?
NSMutableURLRequest *request = [[NSMutableURLRequest alloc]
initWithURL:
[NSURL URLWithString:@"http://www.tumblr.com/api/write"]];
[request setHTTPMethod:@"POST"];
[request addValue:_tumblrLogin forHTTPHeaderField:@"email"];
[request addValue:_tumblrPassword forHTTPHeaderField:@"password"];
[request addValue:@"regular" forHTTPHeaderField:@"type"];
[request addValue:@"theTitle" forHTTPHeaderField:@"title"];
[request addValue:@"theBody" forHTTPHeaderField:@"body"];
NSLog(@"Tumblr Login:%@\nTumblr Password:%@", _tumblrLogin, _tumblrPassword);
[NSURLConnection connectionWithRequest:request delegate:self];
[request release];
Run Code Online (Sandbox Code Playgroud)
双方_tumblrLogin并_tumblrPassword通过运行stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding在其他地方在我的代码.我的登录电子邮件的格式为"address+test@test.com".它适用于直接登录到tumblr,但我想知道"+"字符是否导致编码问题?它没有被逃脱.应该是吗?
感谢Martin的建议,我现在正在使用CFURLCreateStringByAddingPercentEscapes我的登录名和密码.我仍然遇到同样的问题,我的身份验证失败了.
的背景
我的小组有4个SQL Server数据库:
我在Dev环境中工作.当需要推广我一直在处理的对象(表格,视图,函数,存储过程)时,我向我的经理提出请求,他提升了测试.在测试之后,她向促进UAT的管理员提交请求.用户测试成功后,同一个Admin会升级到Production.
问题
由于一些原因,整个过程很尴尬.
问题
人们几十年来一直在做这种工作,所以我想有必要有一个更好的方法来管理这个过程.我想要的是,如果我可以在两个数据库之间运行差异以查看结构是如何不同的,使用该差异生成更改脚本,使用该更改脚本作为我的促销请求.这可能吗?如果没有,有没有其他方法来组织这个过程?
为了记录,我们是100%的微软商店,刚刚将所有内容更新到SQL Server 2008,因此该软件包中可用的任何工具都是合理的游戏.
我应该澄清一下,我不一定要寻找差异工具.如果这是同步我们环境的最佳方式,那么它很好,但如果有更好的方法我正在寻找它.
做我想要的事情的一个例子是Ruby on Rails中的迁移.死的简单语法,所有更改都会自动记录,默认情况下,确定需要运行的迁移几乎非常简单.如果SQL Server有类似的东西,我会很高兴.
我理想的解决方案是1)容易和2)很难搞砸.Rails迁移都是; 到目前为止,我在SQL Server上所做的一切都不是.
我正在尝试编写一个自定义模式匹配,让我打开错误并匹配错误代码.请参阅以下示例:
enum ErrorCode: Int {
case notSoDumb
case dumbError
}
let myError = NSError(domain: "My domain", code: ErrorCode.dumbError.rawValue, userInfo: nil)
func ~=(pattern: ErrorCode, value: NSError) -> Bool {
return (ErrorCode(rawValue: value.code) == pattern)
}
switch myError {
case ErrorCode.notSoDumb:
print("Not a dumb error")
case ErrorCode.dumbError:
print("Super dumb error")
default:
print("No matches!")
}
Run Code Online (Sandbox Code Playgroud)
我的switch语句中的第一个案例有错误Enum case 'notSoDumb' is not a member of type 'NSError'.如果我ErrorCode用整数替换枚举(并更新我的自定义~=运算符以匹配Ints和NSErrors,一切正常.
我有一个如下所示的测试:
func testNextButtonDisabled() {
let app = XCUIApplication()
XCTAssertFalse(app.buttons["Next"].enabled)
}
Run Code Online (Sandbox Code Playgroud)
此测试失败,因为除了我自己创建的"下一步"按钮外,键盘返回按钮标有"下一步".此测试失败并显示错误:
UI测试失败 - 找到多个匹配项
如何区分我自己的"下一步"按钮和键盘"下一步"按钮?
出于审美原因,我决定改变这个:
if ((self = [super init])) {
// init self
}
return self;
Run Code Online (Sandbox Code Playgroud)
进入:
if (!(self = [super init])) return nil;
// init self
return self;
Run Code Online (Sandbox Code Playgroud)
从理论上讲,他们做同样的事情.第一个是经典的方式,简单的工作.调试第二个,我发现它几乎工作."if"是正确的,init代码也是,但是,在返回"self"之后,调试器返回到"if"并返回nil!
我用第二个类创建的所有类我都使用"正确"的方式,因为它们以nil启动,但我真的想知道为什么它会像那样!我担心这可能是其他错误的结果!
我有一个包含两个字符串的数组:
NSArray *sendingArray = [[NSArray alloc]initWithObjects:@"CAT",@"DOG",nil];
Run Code Online (Sandbox Code Playgroud)
我将数组转换为NSData:
NSData *myData = [NSKeyedArchiver archivedDataWithRootObject:sendingArray];
Run Code Online (Sandbox Code Playgroud)
现在我需要将我转换NSData(myData)为const uint8_t
我正在使用此代码通过Wifi网络发送一组值.
我使用下面的代码通过wifi成功发送一个字符串(我的字符串是"字符串").
const uint8_t *message = (const uint8_t *)[string UTF8String];
[_outStream write:bytes maxLength:len];
Run Code Online (Sandbox Code Playgroud)
我写了下面的代码来发送NSData对象,但它有错误.
代码是:
const uint8_t *bytes = (uint8_t)[myData bytes];//this line getting error.
[_outStream write:bytes maxLength:len];
Run Code Online (Sandbox Code Playgroud)
我可以NSData(myData)通过上述方法发送我而不将其转换为const uint8_t吗?如果有,请给我我需要写的代码.
或者任何一个可以告诉我将我的方式NSData(myData)来const uint8_t
ios ×3
iphone ×3
objective-c ×3
xcode ×3
apple-watch ×1
cocoa ×1
cocoa-touch ×1
database ×1
enums ×1
frameworks ×1
git ×1
properties ×1
sql ×1
sql-server ×1
swift ×1
tumblr ×1
ui-testing ×1
uicolor ×1
uikit ×1
wifi ×1
xcode6 ×1
xctest ×1