我的某个存储库中的"src"文件夹显示为灰色(并且不可单击):
在推送到GitHub之前我采取了以下步骤:
git add .
git commit -m "comment"
git remote add origin url
git push -u origin master
"src"文件夹显示在GitHub上,但无法打开.我能做什么?
我有一个关于Git基础知识的问题.
基本上,在Git中被称为"添加到索引"的行为是什么意思?我这样理解:
如果任何文件git计算SHA-1总和,那么基本上添加到索引意味着它计算SHA-1总和并将文件添加到暂存区域.
我对么?
我有以下分支:
master
test1
,这是由 master
test2
,也是由master
.我在test1
分支上做了多次提交,而且,因为我创建了test1
分支,所以我创建了多个提交master
.
还有一些提交test2
,我打算master
稍后再合并.
眼下想到的是,我需要从我的变化master
,如果可能的话,从test2
上test1
.
我想知道我是否可以合并master
成TEST1
的,所以我从获得的提交master
上test
,之后我完成我的功能test1
,再合并,要master
.那可能吗?或者会引发冲突?
是否有可能合并test2
成test1
,然后合并test2
成主,最后,合并test1
成master
?
请问Git是否知道某些提交已经合并到正在合并的分支中?
我能够通过以下方式将Functor的定义从类别理论映射到Haskell的定义:因为Hask
类型的对象,仿函数F
a
的地图映射Hask
到新类型F a
,粗略地说,在它之前加上"F".a -> b
的Hask
新态射F a -> F b
使用fmap :: (a -> b) -> (f a -> f b)
.到现在为止还挺好.现在我到了Applicative
,在教科书中找不到任何提及这样的概念.通过查看它增加了Functor
,ap :: f (a -> b) -> f a -> f b
我试着拿出我自己的定义.
首先,我注意到,因为(->)
它也是一种类型,态射Hask
也是它的对象.鉴于此,我提出了一个建议,即应用仿函数是一个仿函数,它也可以将"箭头" - 源类别的对象映射到目标类型的态射.
这是正确的直觉吗?你能提供更正式和严谨的定义吗?
这是我做的:
git checkout -b branch_name
.branch_name
.master
分支机构并进行了快速合并.当我跑步时git log branch_name --oneline
,我收到以下消息:
fatal: ambiguous argument 'branch_name': both revision and filename
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'
Run Code Online (Sandbox Code Playgroud)
可能是什么问题呢?
C中的换行符是什么?我知道不同的操作系统有不同的行尾字符,但它们被翻译成C换行符.这个角色是什么?
我想,以取代#Banner none
与Banner /etc/sshd_banner
该距离/etc/sshd_config
.如果我跑
sudo sed -i "s/#Banner none/Banner \/etc\/sshd_banner" /etc/sshd_config
Run Code Online (Sandbox Code Playgroud)
我收到以下错误
sed:1:"/ etc/sshd_config":未终止的替代模式
有关如何解决此问题的任何想法?
我正在尝试使用optparse-applicative来解析一个Maybe String
但我找不到任何地方如何处理Maybe
.我发现的唯一的事情是添加一个默认值,但我真的需要一个Nothing
if用户没有提供选项而不是""
.有没有办法实现这个目标?
以下是工作代码的示例:
import Options.Applicative
data Config = Config
{ cIn :: String
, cOut :: String
} deriving Show
configParser :: Parser Config
configParser = Config
<$> strOption (long "in" <> short 'i')
<*> strOption (long "out" <> short 'o')
main :: IO ()
main = do
conf <- execParser (info configParser fullDesc)
print conf
Run Code Online (Sandbox Code Playgroud)
但是,我希望参数是可选的,Maybe String
而不是String
在Config
:
data Config = Config
{ cIn …
Run Code Online (Sandbox Code Playgroud) haskell command-line-arguments applicative optparse-applicative
我无法理解UNPACK
Haskell的工作原理.例如,考虑以下数据声明:
data P a b = P !a !b
data T = T {-# UNPACK #-} !(P Int Int)
Run Code Online (Sandbox Code Playgroud)
如何T
解压缩数据类型?它会等同于
data T' = T' !Int !Int
Run Code Online (Sandbox Code Playgroud)
或将Int
进一步解压缩:
data T'' = T'' Int# Int#
Run Code Online (Sandbox Code Playgroud)
?关于什么
data U = U {-# UNPACK #-} !(P Int (P Int Int))
Run Code Online (Sandbox Code Playgroud)
?
以fmap
(Functor
方法)的类型签名为例:
(a -> b) -> f a -> f b
Run Code Online (Sandbox Code Playgroud)
与以下类型签名有何不同?
a -> b -> f a -> f b
Run Code Online (Sandbox Code Playgroud)
这两种类型的签名之间是否存在差异?
git ×4
haskell ×4
applicative ×2
branch ×1
c ×1
git-merge ×1
github ×1
indirection ×1
macos ×1
newline ×1
parentheses ×1
sed ×1
types ×1