任务要求 统计指定时间内,指定git地址与svn地址上的所有人员的代码行变更情况. 解决方案 最初为根据数据库中存储的所有git与svn地址来统计所有人员的提交代码行.之后由于库中存储的地址不全,改为通过gitlab api,找到上面的所有仓库,之后统计代码行.svn由于数据库中地址存储较全,所以还是从库中获取地址. 实际流程 git代码行统计: 任意一个git的ip地址内会包含很多仓库地址,每次调用api最多只能查出100条地址,需要设置起始查询的页数. 所以先调用api查询出来一共有多少页(…
sed -i '/{Str}/d' abc.txt 假如你的log日志中某行有sleep字符,直接输入命令: sed -i '/sleep/d' log.log 如果删除的是一个变量的值,假如是var的命令: sed -i '/'"$var"'/d' abc.txt 注意:在要删除的字符串俩边用"/"和"/d"包起来. '/xxxx/d' 集体sed的用法,请移步: https://www.cnblogs.com/maxincai/p/51463…
现象描述: (1).数据库通过调用透明网络实现分布式事务,但透明网关停用后,失败的分布式事务并未清理. (2).数据库 alert 日志 Thu Sep 06 06:53:00 2018 Errors in file /u01/app/oracle/diag/rdbms/zszdb/ZSZDB/trace/ZSZDB_reco_12245.trc: ORA-01017: invalid username/password; logon denied [Oracle][ODBC SQL Serve…
rest-assured 将log()中的信息打印到log日志中去的方法: ============方法1============== PrintStream fileOutPutStream = new PrintStream(new File("log/test.log")); RestAssured.config = RestAssured.config().logConfig(new LogConfig(fileOutPutStream, true)); ===========…
使用 Git 来管理 Xcode 中的代码片段 代码片段介绍 xcode4 引入了一个新 feature: code snippets,在整个界面的右下角,可以通过快捷键:cmd + ctrl + opt + 2 调出来.code snippets 是一些代码的模版,对于一些常见的编程模式,xcode 都将这些代码抽象成模版放到 code snippet 中,使用的时候,只需要键入快捷键,就可以把模版的内容填到代码中. 例如,在引入 GCD(Grand Central Dispatch) 后,当…
git从远程仓库中更新代码到本地仓库 有时候在使用git pull的时候,会莫名才报错.查了很多资料,尝试过git的很多命令.包括git fetch命令,都会报同样的错.最后终于发现了一条捷径,由网友提供, 当从远程的仓库到本地出错时候,使用git stash效果更佳. 方法: git stash git pull 这样就可以更新远程仓库到本地了~…
问题与分析 最近在查项目的log时发现报了大量的NPE(NullPointerException),诡异的是只log了Exception的类名,却没有具体的堆栈信息,以致于无法对该NPE异常进行准确定位. 这是因为jvm自身存在着优化机制,但一个同样的异常重复出现并被打印到log后,jvm可以不提供具体的堆栈信息来提高性能.关于这个的具体信息我们可以从官网上查到相关的资料: http://www.oracle.com/technetwork/java/javase/relnotes-139183…
VS强大的查找功能,可以使用正则表达式来进行查找,这里统计代码行数的原理就是: 在所有指定文件中进行搜索,统计匹配的文本行数. 但是匹配的行需要满足:非注释.非空等特殊非代码行. 使用Ctrl+Shift+F快捷键打开高级查找,可以设置查找内容为正则表达式(需要在下面勾选,同时可以设置查找的文件类型),查找范围请根据需要进行设置. 点击"查找全部"搜索整个解决方案,可以得到查找结果: 最下面会列出匹配行数,这个就是我们所谓的代码行数的估值了...不过这个值也太不准确了... 但是起码有…
可能是MySQL在某些情况下重启(密切关注重启现象,关注日志,找出原因),导致mycat切换主从.由于设置了单向主从,mycat将从库切换为主库,原来的主库宕机.后来重新更新dnindex.conf之后,重启mycat后导致MySQL主从复制失败,原因是:当主机宕机后,从机升主,读写都在新主上,强制切换主从后,从机复制主机失败.解决办法:设置双主模式,保证单台机器宕机后,两台机器的数据一致.当某台机器宕机后,重启后能够更新数据,保证数据一致. 测试:登陆其中62服务器,kill掉3306端口.m…
$Str = '你想要存的内容'; file_put_contents('abc.log', "\r\n\r\n". $Str, FILE_APPEND);     FILE_APPEND:是追加的意思. 文章来源:刘俊涛的博客 地址:http://www.cnblogs.com/lovebing 欢迎关注,有问题一起学习欢迎留言.评论.…
import timea=0while True: d={} f = open(r"/Users/**juan/Downloads/access.log",encoding="utf-8") f.seek(a) for line in f: if line.split() !="": f1=line.split(" ")[0] if f1 not in d: d[f1]=1 else: d[f1] += 1 a=f.tell(…
近期在git遇到几个问题,让我重新认识到git的强大性,下面列出来记录一下 有一个数据库的配置文件,在用 git add 添加到 index file 时不能透露了相关配置.而如果用 .gitignore 去操作这需求,却会放弃add整个文件,如果这样做的话,commit后其他人就看不到这里面有个config配置文件了,这结果很明显不是我们想要的.怎么做呢?搜索了下要使用git下面的filter配置去过滤那些秘密.官方文档的描述如下: ** filter. SYNOPSIS $GIT_DIR/i…
希望是输入一个合法的文件夹的路径,然后代码自动读取该文件夹下的每个py结尾的文件内的代码行数,最后汇总一个数,但现在只是有思路,却没时间写,这是能读取同级文件下的某个文件, with open('test1.py', encoding='utf8') as f: count = 0 for line in f.readlines(): line = line.strip() # 去除每行的空格,每一个line都是字符串,去完空格方便下面的判断 if len(line) != 0 and line…
前面我们说了用oracle自带的审计功能可以实现记录用户登录失败日志到数据表中(链接:http://www.54ok.cn/6778.html).今天我们来分享一下如何把用户登录失败信息记录到alert.log日志文件中. 使用sys账号登录数据库,然后创建触发器. CREATE OR REPLACE TRIGGER logon_denied_to_alert  AFTER servererror ON DATABASEDECLARE  message   VARCHAR2(168);  ip …
开发接口程序时,要保证程序稳定运行就要时刻监控接口程序发送和接收的数据,这就需要一个日志记录的类将需要的信息记录在日志文件中,便于自己维护接口程序.(Web系统也是如此,只是对应的日志实现比这个要复杂一点). 刚开始考虑的比较少,没有加入控制日志文件数量的功能.运行了一段时间,文件夹内的Log文件如下所示: 如果是这样,那运行一年不就三百多个日志文件了,想一想这太可怕了.通过查找资料,发现.Net中的FileInfo存有文件的信息(包括名称,创建时间,文件大小等),那就自己定义一个文件比较器实现…
一. Log 日志中 Bug 类型 程序异常强制关闭: Force Close ,Fatal 程序无响应: Application Not Response , ANR(应用无响应).一般是主线程超时无响应造成的. ANR 类型有: keyDispatchTimeout(Activity):5秒无响应 位于 ActivityManagerService.java 类中 // How long we wait until we timeout on key dispatching. static…
1 #!/bin/bash/python 2 # -*-coding:utf-8-*- 3 #svn统计不同url代码行数变更脚本,过滤空行,不过滤注释. 4 import subprocess,os,sys,time,re,shutil 5 from optparse import OptionParser 6 7 #初始化temp文件: 8 FOLDER = "/tmp/temp_cm_svnrtagdiff" 9 #初始化设置私密配置文件: 10 PRIVATE_FILE = &…
近日在写一个统计项目中C/C++文件(后缀名:C/CPP/CC/H/HPP文件)代码行数的小程序.给定包含C/C++代码的目录,统计目录里所有C/C++文件的总代码行数.有效代码行数.注释行数.空白行数. 其中:总代码行数 =(有效代码行数+注释行数+空白行数) 每找到一个目标代码文件,就创建任务投进线程池.线程池的设计基于任务,基于任务相比基于线程的优势,请参考Scott Meyers撰写的Moderm Effective C++一书. 先给出程序运行的效果,见下图: 近5万的代码文件,118…
参考:http://blog.csdn.net/nowayings/article/details/38926501 https://www.cnblogs.com/bonelee/p/6234647.html 打印到日志中: 代码如下 #include<syslog.h> #include <stdio.h> int main(){ FILE*f; f = fopen("abc","r"); if(!f){ syslog(LOG_ERR|L…
可能大家都知道用 `wc -l` 命令进行代码行数统计,但是它会将代码中的注释.空行所占用的文本行都统计在内.如果想查看一个 tar 包或一个项目目录中“实际”的代码行数并且不愿意自己去写一个脚本来做此类工作,那么可以考虑使用 cloc. cloc 是一个 perl 脚本,它可以统计很多种编程语言的代码文件中的空行.注释以及实际的代 码行数. 示例 1:统计一个 tar 包中的代码行 $ > cloc small-2.0.tar.gz 42 text files. 41 unique files…
实现的功能 git 根据传入的三个参数:起始统计日期.结束统计日期.git仓库地址. 脚本统计的是git仓库内的所有分支的log信息. 脚本统计的是指定时间段内.每一个提交人指定的git地址的所有分支里的提交代码行的新增情况. 其中代码行可分别统计出:新增的有效代码行数.新增的空行数.新增的注释行数. 并且脚本中还做了相应的提交历史“去重”,避免了这种情况:“某个分支是以其他分支为基础拉出来的,所以会将其他分支的git历史log一并复制,导致log历史重复了两份”,在统计时会去重,多次重复的gi…
[root@ok 资料库]# svn log 简历 ------------------------------------------------------------------------ r174 | svnroot | -- :: + (Fri, Aug ) | line +12k ------------------------------------------------------------------------ r141 | svnroot | -- :: + (Sat…
1. First Blood 之前在Windows环境下进行svn到git的迁移是很简单的,(参考官方文档:https://git-scm.com/book/zh/v1/Git-%E4%B8%8E%E5%85%B6%E4%BB%96%E7%B3%BB%E7%BB%9F-%E8%BF%81%E7%A7%BB%E5%88%B0-Git) 可是在macOS环境下(macOS High Sierra 10.13.2),输入: $ git svn 神奇的事情发生了,报了以下错误: can't locate…
SVN用得也算挺广泛的,但是它也存在着一个大问题,就是权限控制得比较差,要么读,要么读写,而读写就意外着可以删除文件(目前我的理解是这样,如果有什么不对的地方,请多指教). 刚好前段时间发生了开发人员误删代码库的问题,我才意识到这个问题很大.领导的要求是,开发人员等不应当有删除文件的权限,应该只有项目经理之类的有删除文件的权限. 于是上网搜索了一番,发现有不少人也说SVN权限的管理太粗化了.找了好久才发现可以通过svn项目目录下的hooks下的pre-commit实现. 一.首先来看一下svn项…
转载请注明出处:http://www.codelast.com/ 以下都是比较基础的操作,高手们请绕道,不必浪费时间来看了. (A)SVN (1)查看日志提交的时候一般会写上注释,如果要查看提交日志,用以下命令: 1 svn log -l 4 其中,-l 4表示只查看最近4条日志(也可以没有这样的参数,就表示查看所有日志).但是你通常会很抓狂地发现,最近的几条日志中,竟然没有你才刚刚提交的那一次的日志!这是怎么回事?日志丢了吗?其实,是因为你要很用以下命令,更新本地的版本库,才能看到最近提交的日…
目录: SVN与Git比较(一)集中式vs分布式 SVN与Git比较(二)版本库与工作区 SVN与Git比较(三)全局版本号和全球版本号 SVN与Git比较(四)部分检出 SVN与Git比较(五)更新和提交 SVN与Git比较(六)分支和里程碑的实现 SVN与Git比较(七)分支与合并 SVN与Git比较(八)撤消操作 SVN与Git比较(九)权限管理 SVN与Git比较(十)优缺点比较 一. 集中式vs分布式 1. Subversion属于集中式的版本控制系统集中式的版本控制系统都有一个单一的…
git官网api: https://git-scm.com/docs 一. 集中式vs分布式 1. Subversion属于集中式的版本控制系统集中式的版本控制系统都有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新. Subversion的特点概括起来主要由以下几条: 每个版本库有唯一的URL(官方地址),每个用户都从这个地址获取代码和数据: 获取代码的更新,也只能连接到这个唯一的版本库,同步以取得最新数据: 提交必须有…
摘要Svn是目前得到大多数人认可,使用得最多的版本控制管理工具,而Git的优势在于易于本地增加分支和分布式的特性,可离线提交,解决了异地团队协同开发等svn不能解决的问题.本文就这两种版本控制工具的异同点作详细介绍. 目录 摘要: 1一. 集中式 vs 分布式 21. Subversion属于集中式的版本控制系统 22. Git属于分布式的版本控制系统 4二. 版本库与工作区 61. SVN的版本库和工作区是分离的 72 .Git 的版本库和工作区如影随形 7三. 全局版本号和全球版本号 81.…
转:http://www.codelast.com/?p=5719 转载请注明出处:http://www.codelast.com/ 以下都是比较基础的操作,高手们请绕道,不必浪费时间来看了. (A)SVN (1)查看日志提交的时候一般会写上注释,如果要查看提交日志,用以下命令: 1 svn log -l 4 其中,-l 4表示只查看最近4条日志(也可以没有这样的参数,就表示查看所有日志).但是你通常会很抓狂地发现,最近的几条日志中,竟然没有你才刚刚提交的那一次的日志!这是怎么回事?日志丢了吗?…
今天自己还是很有进步的,但是 下午的进度很慢,学习还是得回去,不能在工位进行 在网上看到一篇有关于SVN与Git的区别 复制下来了,以后可以经常看看 一. 集中式vs分布式 1. Subversion属于集中式的版本控制系统集中式的版本控制系统都有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提 Subversion的特点概括起来主要由以下几条: 每个版本库有唯一的URL(官方地址),每个用户都从这个地址获取代码和数据: 获取代…