Linux

24
May

Git Config中receive.denyCurrentBranch做了什么?

官网的解答

receive.denyCurrentBranch If set to true or "refuse", git-receive-pack
will deny a ref update to the currently checked out branch of a
non-bare repository. Such a push is potentially dangerous because it
brings the HEAD out of sync with the index and working tree. If set to
"warn", print a warning of such a push to stderr, but allow the push
to proceed. If set to false or "ignore", allow such pushes with no
message. Defaults to "refuse".

Another option is "updateInstead" which will update the working tree
if pushing into the current branch. This option is intended for
synchronizing working directories when one side is not easily
accessible via interactive ssh (e.g. a live web site, hence the
requirement that the working directory be clean). This mode also comes
in handy when developing inside a VM to test and fix code on different
Operating Systems.

这个config是决定 当你Push到一个非bare的远程库的正处于切换状态下分支时的行为。

设置为true或refuse时,会拒绝你的push并且发出几行警告消息
设置为warn时,会接受你的push并且发出几行警告消息
设置为false或ignore时会接受你的push且不发出警告

后两种虽然接受了push,但并没有直接反映在工作目录(working tree)上,你需要输入

git reset --hard

或者切换到其他分支再切换回来,才能刷新文件

设置为updateInstead时,会接受push并直接更新工作目录
但如果工作目录相对HEAD指针有更新,则会拒绝push
注意只有git 版本2.5以后才添加updateInstead. 请升级后再使用

09
May

解决腾讯云Centos VPS 远程连接mysql数据库的一些问题

mysql默认只支持本地(local)连接,想要开启远程连接,也就是能从远程以mysql -h的方式连接,需要进行一些设定

1、修改mysql的远程端口限制。找到etc/my.cnf
找到如下行,并修改成这样

#skip-networking
bind-address=0.0.0.0

如果没有bind-address 就手动添加。
然后重启mysql

service mysql restart

2、输入

netstat -an|grep 3306 

确保3306端口处在监听状态,如果没有可能是mysql服务有问题,需要重装

3、在本地或其他服务器尝试

telnet *.*.*.*(vps的ip) 3306

如果能连接成功,跳到第6步

4、确保firewalld(centos自带防火墙)没有限制3306端口,或者说已关闭

5、确保iptables没有限制mysql远程连接端口 输入

iptables -L -n  --line-number

如果里面有一行是什么DROP tcp -- ... tcp dpt:mysql 记住行号,并输入命令

iptables -D INDEX 行号

来删除

6、在本地或其他服务器运行

mysql -h *.*.*.*(vps的ip) -u root(mysql用户名) -p

并输入密码 如果成功接入 远程连接的配置也就成功了!

22
Jan

SBT项目构建过慢/卡在Getting解决办法

找了找网上的镜像 发现现在阿里云和bintray的都挺好用

步骤:
window:C:\Users\用户目录.sbt\

linux:~/.sbt/
建立repositories文件(不要后缀名)
里面输入

[repositories]
#local
public: http://maven.aliyun.com/nexus/content/groups/public/
typesafe:http://dl.bintray.com/typesafe/ivy-releases/ , [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext], bootOnly
ivy-sbt-plugin:http://dl.bintray.com/sbt/sbt-plugin-releases/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]
sonatype-oss-releases

sonatype-oss-snapshots

保存,再重新构建即可,亲测下载挺快的

22
Aug

关于Ubuntu15/16等版本安装Spotify,Brackets,遨游,Chrome等缺少Libgcrypt11支持的解决方案

具体表现为用软件安装没反应,而执行
$ spotify

$ sudo dpkg -i Brackets.1.2.Extract.64-bit.deb
均报找不到libgcrypt11的问题。
主要原因是Ubuntu新版不再支持Libgcrypt11而原装Libgcrypt20,而这些应用目前还依赖11,解决方案很简单,就是强制安装旧版的Libgcrypt11。

32Bit from LaunchPad
64Bit from LaunchPad

或者从官网获取