例如,Git允许从任何给定的远程和引用中获取
git fetch <remote-url> <reference>
Run Code Online (Sandbox Code Playgroud)
因此,无需添加遥控器或创建分支即可获得提交的提交.
但是,这仅适用于引用,例如分支名称或标记,但不适用于特定哈希,因此不能直接在任何地方引用.
有没有办法从远程获取特定的提交?
是否可以检查变量是否是可选的,以及它包装的是什么类型?
可以检查变量是否是特定的可选:
let someString: String? = "oneString"
var anyThing: Any = someString
anyThing.dynamicType // Swift.Optional<Swift.String>
anyThing.dynamicType is Optional<String>.Type // true
anyThing.dynamicType is Optional<UIView>.Type // false
Run Code Online (Sandbox Code Playgroud)
但是有可能再次检查任何类型的可选项吗?就像是:
anyThing.dynamicType is Optional.Type // fails since T cant be inferred
// or
anyThing.dynamicType is Optional<Any>.Type // false
Run Code Online (Sandbox Code Playgroud)
一旦知道你有一个可选的,检索它包装的类型:
// hypothetical code
anyThing.optionalType // returns String.Type
Run Code Online (Sandbox Code Playgroud) 我有一些提交由git subtree我想要垃圾收集(更多的任何实际目的只是为了了解什么和为什么可以收集).
我已经检查过这些提交没有通过以下方式引用:
# In any reflog
> git reflog --all --no-abbrev-commit | grep <hash>
(no output)
# In any branch, local or remote
> git branch --contains <hash>
(no output)
> git branch -r --contains <hash>
(no output)
# In any tag
> git tag --contains <hash>
(no output)
# In the current index
> git rev-list HEAD | grep <hash>
(no output)
# In references from filter-branch
> ls .git/refs/original/
(the folder does not exist)
Run Code Online (Sandbox Code Playgroud)
这些是 …
我有以下情况:
K---L new-feature
/
H---I---J dev-team1
/
E---F---G dev-main
/
A---B---C---D master
Run Code Online (Sandbox Code Playgroud)
而且我想在dev-main分支中只移动新功能(K --- L)分支而没有(H --- I --- J)形式dev-team1
H---I---J dev-team1
/
E---F---G---K---L dev-main
/
A---B---C---D master
Run Code Online (Sandbox Code Playgroud) 我找到了一些使用virtual关键字进行函数的代码 ,例如:
package tryOut{
public class Parent {
public function Parent() {}
public function foo():void{
trace("Parent foo");
}//foo
public virtual function bar():void{
trace("Parent virtual bar");
}//bar
}//class
}//package
Run Code Online (Sandbox Code Playgroud)
据我所知,使用virtual关键字应该修改覆盖方法的方式,或者使用子方法的方式可以工作,或者其他什么.但它似乎什么都不做.有延伸:
package tryOut {
public class Child extends Parent {
public function Child() {}
public override function foo():void {
trace("Child foo");
}//foo
public override function bar():void {
trace("Child virtual bar");
}//bar
}//class
}//package
Run Code Online (Sandbox Code Playgroud)
以下代码打印:
var parent:Parent = new Parent();
var child:Child = new Child();
parent.foo(); //Parent foo
child.foo(); …Run Code Online (Sandbox Code Playgroud) 我有一个从远程存储库中提取的本地存储库.运行git pull以及git fetch; git merge FETCH_HEAD用于执行完全相同的操作,如以下描述git pull所预期的:
描述
将来自远程存储库的更改合并到当前分支中.在默认模式下,git pull是git fetch的简写,后跟git merge FETCH_HEAD.
目前,出乎意料地,运行正确地git fetch停止更新FETCH_HEAD引用.FETCH_HEAD现在仍然坚持旧的提交.运行git fetch会将所有更改下载到远程跟踪的分支,但FETCH_HEAD保持不变,无论其运行的分支如何.
# currently in branchone
> git fetch
# branchone is up to date since...
> git rev-parse branchone
593539e8a98ba5980d4b645db3b0f506bb9b6a2c
# ...its in the same commit as the remote branch
> git rev-parse origin/branchone
593539e8a98ba5980d4b645db3b0f506bb9b6a2c
# however FETCH_HEAD shows something different
> git rev-parse FETCH_HEAD
37301df96597ac037f8e7e846fea6fc7df77bea5
Run Code Online (Sandbox Code Playgroud)
git pull …
给定一个从分支中挑选出master的提交,然后将该分支合并回master:
git如何知道来自前一个挑选的变化不应该与合并的变化相冲突?是否使用樱桃选择的提交保存了任何类型的元数据?
如果我取消设置数组,它的元素是垃圾收集还是释放,假设它们没有被其他地方引用?如果我只是做$ array = new array();
$array = array('a'=>1);
//method 1 to clear array
unset($array);
方法2清除数组
$array = array('a'=>1);
//method 2 to clear array
$array y = array();
拥有AnyClass类型的变量,是否可以知道该类型是否是另一种类型的扩展或实现?
例如:
var aClass: AnyClass = UIButton.self
// assuming a fictional operator "isOfType"
// Both UIButton and UILabel are subclasses of UIView
aClass isOfType UIButton // true
aClass isOfType UIView // true
aClass isOfType UILabel // false
Run Code Online (Sandbox Code Playgroud)
一种可能的方法是创建一个实例,但创建这样的实例可能并不总是令人满意的:
var aClass: AnyClass = UIButton.self
let buttonClass = aClass as? UIButton.Type
var aButton: AnyObject = buttonClass!()
aButton is UIButton // true
aButton is UIView // true
aButton is UILabel // false
Run Code Online (Sandbox Code Playgroud)
还有其他方法可以检查AnyClass是否包含扩展另一种类型的类型吗?