小编Jas*_*ith的帖子

如何以编程方式确定当前签出的Git分支

在Unix或GNU脚本环境(例如Linux发行版,Cygwin,OSX)中,确定当前在工作目录中检出哪个Git分支的最佳方法是什么?

这种技术的一个用途是自动标记一个版本(就像svnversionSubversion一样).

另请参阅我的相关问题:如何以编程方式确定Git结帐是否为标签,如果是,那么标签名称是什么?

git bash shell

263
推荐指数
12
解决办法
10万
查看次数

更正Bash和shell脚本变量大小写

我遇到了许多带有变量的shell脚本,我一直认为存在严重的误解.我的理解是,按照惯例(也许很久以前就必须),环境变量都是全部的.

但是在像Bash这样的现代脚本环境中,我总是倾向于使用临时变量的小写名称约定,而仅为导出(即环境)变量使用大写的约定.例如:

#!/usr/bin/env bash
year=`date +%Y`
echo "It is $year."
export JAVA_HOME="$HOME/java"
Run Code Online (Sandbox Code Playgroud)

这一直是我对事物的看法.是否有任何权威来源同意或不同意这种方法,还是纯粹是风格问题?

bash shell scripting naming-conventions capitalization

171
推荐指数
5
解决办法
5万
查看次数

将Git远程HEAD更改为指向除master之外的其他东西

如何将Git遥控器的HEAD引用设置为指向除"master"之外的其他内容?

我的项目有一个不使用"主"分支的策略(所有分支都有有意义的名称).此外,规范主存储库只能通过ssh://访问,没有shell访问权限(如GitHub或Unfuddle).

我的问题是远程存储库仍然有一个HEAD引用refs/heads/master,但我需要它指向一个不同的分支.这导致两个问题:

  1. 克隆回购时,有这个,

    警告:远程HEAD是指不存在的ref,无法结帐.

    这令人困惑和不方便.

  2. 基于Web的代码浏览器依赖于HEAD作为浏览树的基础.我需要HEAD指向一个有效的分支,然后.

git git-remote git-branch

120
推荐指数
8
解决办法
17万
查看次数

比较和对比轻量级标记语言

请确定最流行的轻量级标记语言,并比较它们的优缺点.这些语言应该是技术散文的通用标记,例如文档(例如,Haml不计算在内).

另请参阅:Markdown与ReStructuredText

documentation markup markdown restructuredtext textile

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

什么是CouchDB复制协议?是不是像Git?

是否有技术文档描述两个Couches之间的复制是如何工作的?

CouchDB复制的基本概述是什么?有什么值得注意的特点呢?

git couchdb

65
推荐指数
3
解决办法
7823
查看次数

离线/在线数据同步设计(Javascript)

我目前正在使用所有html5好东西编写离线webapp以获得离线支持.但是,我现在开始考虑编写同步模块,以确保将任何脱机数据发送到服务器并将服务器数据发送回客户端.现在我确信这已经完成了,我的意思是它是一个非常经典的设计问题,影响移动设备和其他许多东西.所以我想知道有人能指出我为这种事情提供一些好的设计资源吗?

现在我真的不需要过于复杂,我的意思是我没有处理多个用户访问相同的数据,我很高兴不合并冲突(只需要采取最新的)但我仍然希望设计能够请允许我将来使用这些选项.

还有,有没有任何开源项目实现这种类型的东西?我不会扯掉其他人的代码(如果许可证允许的话),我很乐意移植.

javascript offline data-synchronization pouchdb

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

得到一个功能的arity

在Javascript中,如何确定为函数定义的形式参数的数量?

注意,这不是arguments调用函数时的参数,而是函数定义的命名参数的数量.

function zero() {
    // Should return 0
}

function one(x) {
    // Should return 1
}

function two(x, y) {
    // Should return 2
}
Run Code Online (Sandbox Code Playgroud)

javascript functional-programming arity

53
推荐指数
3
解决办法
6706
查看次数

如何以编程方式确定Git签出是否为标记,如果是,则标记名称是什么

在Unix或GNU脚本环境(例如Linux发行版,Cygwin,OSX)中,确定当前结帐是否为Git标记的最佳方法是什么.如果是标签,我该如何确定标签名称?

这种技术的一个用途是自动标记一个版本(就像svnversionSubversion一样).

请参阅我关于以编程方式检测Git分支的相关问题.

git bash shell

47
推荐指数
5
解决办法
1万
查看次数

从shell脚本中的目录中选择随机文件的最佳方法

从shell脚本中的目录中选择随机文件的最佳方法是什么?

这是我在Bash中的解决方案,但我会对在Unix上使用的更便携(非GNU)版本非常感兴趣.

dir='some/directory'
file=`/bin/ls -1 "$dir" | sort --random-sort | head -1`
path=`readlink --canonicalize "$dir/$file"` # Converts to full path
echo "The randomly-selected file is: $path"
Run Code Online (Sandbox Code Playgroud)

有人还有其他想法吗?

编辑: lhunath对解析提出了一个很好的观点ls.我想这取决于你是否想要携带.如果您有GNU findutils和coreutils,那么您可以:

find "$dir" -maxdepth 1 -mindepth 1 -type f -print0 \
  | sort --zero-terminated --random-sort \
  | sed 's/\d000.*//g/'
Run Code Online (Sandbox Code Playgroud)

哇,这很有趣!此外,它更符合我的问题,因为我说"随机文件".但是很幸运的是,现在很难想象在安装了GNU而不是Perl 5的情况下部署的Unix系统.

random bash shell file

46
推荐指数
3
解决办法
4万
查看次数

最佳的基于角色的访问控制(RBAC)数据库模型

用于跟踪Web应用程序的基于角色的访问控制的最佳数据库模式是什么?

我正在使用Rails,但谷歌链接的RBAC插件看起来没有维护(只有300个提交到SVN;最近几乎是一年前).

这个概念很简单,可以从头开始实现,但又复杂而重要,值得一试.

那么其他人如何构建和实施他们的RBAC模型呢?

permissions roles ruby-on-rails access-control rbac

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