随笔分类 -  linux

摘要:很久以前开发的功能,在服务器上执行,因为Git对utf-8支持的问题,走了很多弯路,放出所有代码供大家参考:View Code 1 #fei add for dl_patch download 2 3 4 ############# some tools for pretty codes ######### 5 sub git_write_xml_file 6 { 7 git_header_html(); 8 my $zipfile = $file_name ;#from paramter 9 my $xmlfilename = "d... 阅读全文
posted @ 2013-04-09 17:35 ifeixiang 阅读(1259) 评论(0) 推荐(0) 编辑
摘要:今天在打差异包的时候,发现打包失败。原来是拷贝文件失败。于是,打文件名与文件状态打印出来看,发现添加文件的状态“A”与删除文件状态“M”调转了!这一度让我以为是Perl传递参数的时候发生了错误。于是纠结在数组引用传递的问题上,同时将代码优化了一下。后来发现这不是办法,因为实在不对劲。在本地进行若干尝试后,发现,文件在本地的状态与服务器的状态也是相反的。我用的命令是git diff-tree HEAD HEAD^ --name-status 于是尝试了将两个Hash码调转,果然,状态和服务器一样了。原来是参照物的问题,而不是Perl引用传递的问题! git diff-tree HEAD^ HEA 阅读全文
posted @ 2012-12-22 10:11 ifeixiang 阅读(582) 评论(0) 推荐(0) 编辑
摘要:在项目中经常会遇到这样的情况,在Windows下上传到服务器的中文文件夹或文件变成乱码了。 以前一度不知道怎么办,用着办法也是非常落后的:备份文件夹,照理来说,乱码文件夹或文件是不会下载下来的。删除服务器上的文件夹所有内容,因为rm -rf * 总是可以执行的再上传 这是一个比较笨的方法。 今天在搜索Git中文目录乱码的问题时,想看看Linux下文件夹的结构,于是找到了删除乱码文件夹或文件的方法。通过 文件的inode号来删除文件(相当于我们用pid来kill进程一样) ll -i 或 ls -i 列出文件的inode号 find folder -inum -delete 阅读全文
posted @ 2012-12-15 09:48 ifeixiang 阅读(880) 评论(0) 推荐(0) 编辑
摘要:首先是基本的: 1 git add * 2 3 git commit -a -m "commit message" 4 5 //本地提交 6 7 git remote add origin username@serverip:projectName 8 9 git push origin master10 11 git fetch git pull然后是:1 git reset HEAD^ //只回退commit 与 index信息2 //如果在服务器端的操作,想回退的话,可以用--f3 git push --f origin master //这样,服务器的版本会被强制覆 阅读全文
posted @ 2012-10-30 11:48 ifeixiang 阅读(341) 评论(0) 推荐(0) 编辑
摘要:做了个小的DEMO,可以查看:https://github.com/feixiang/webgit.git 这几天一直在郁闷的事情。 Git在shell里面执行得好好的,apache运行用户也改成了git,但是,在提交Git工程的时候却没法提交。 刚开始以为是文件权限问题,因为权限问题是Linux上的最大问题。 可是,尽管把目录都设成了777的权限(不要学,测试用),还是没法提交,于是心都凉了... 今天在询问某个同事的时候,无意中将apache用户从git改回apache,意外地发现!竟然能够提交成功! 之前将apache用户设置为git是因为在web服务器上部署了Git,组成Gi... 阅读全文
posted @ 2012-10-25 22:21 ifeixiang 阅读(3532) 评论(0) 推荐(0) 编辑
摘要:mkdir -p /data/data2/data3 -p表示递归创建目录tar -k 表示不覆盖已存在的文件,keep old files tar -kxvf 查看 未正常关闭的程序占用的文件:lsof |grep deleted查看哪个程序占了最多资源的命令:1 ps -A --sort -rss -o comm,pmem,pcpu |uniq -c |head -15不断更新,不断累积经验~~~cp命令,有时候即使用用了cp -rf 还是会提示覆盖提示,这是因为 bash用了别名,把cp变成了cp -i , 所以,运行1 # unalias cp2 # cp -rf XXX ... 阅读全文
posted @ 2012-08-30 15:34 ifeixiang 阅读(6995) 评论(0) 推荐(0) 编辑
摘要:原来!!!Linux文件夹权限问题非常严重! SSH验证机制非常严格!要求用户的HOME文件夹属性是700,即其他用户不能访问。 所以,chmod 700 git(我的用户根目录的home) 阅读全文
posted @ 2012-08-28 15:10 ifeixiang 阅读(353) 评论(0) 推荐(0) 编辑
摘要:参考文章:http://www.ossxp.com/doc/git/gitolite.html当前任务,学习中... 公司小范围用法: 服务器上做的:在服务器上建立一个用户,这里命名为git。 ubuntu下: useradd git —— passwd git 1 (改密码为1)找个目录,建立空仓库 git --bare init 。 ubuntu下: cd /opt —— mkdir git —— git --bare init建立文件夹project.git (名字随便取,这里取project,以后别人git clone时就会生成project文件夹)。再建立一个文件夹.ssh,用来存入 阅读全文
posted @ 2012-06-28 14:45 ifeixiang 阅读(46675) 评论(5) 推荐(2) 编辑
摘要:使用Git的最简单的几个步骤: http://rogerdudler.github.com/git-guide/index.zh.html另外,还有这篇文章也写的很简单易懂:http://marklodato.github.io/visual-git-guide/index-zh-cn.html 阅读全文
posted @ 2012-06-04 09:40 ifeixiang 阅读(740) 评论(0) 推荐(0) 编辑
摘要:上传到真正的服务器上,发现服务器用的是64位系统,当时就真的应该想到这一点!出现了wrong ELF class: ELFCLASS32 in Unknown on line这种好像是32位程序与64位库的冲突问题!解决方法 : 正在解决中...-------------------------continue----------------------几经折腾,装了和服务器一样版本的64位操作系统。由于这次是RHEL,又需要一点熟悉的时间,又耗了很多时间...这里遇到的一个问题是:我是用virtualbox装的,因为宿主机(本机)是32位系统,所以装64位系统需要CPU开启虚拟化技术(IVT 阅读全文
posted @ 2012-05-04 15:05 ifeixiang 阅读(10992) 评论(0) 推荐(0) 编辑
摘要:其实绝大多数问题都是环境配置问题,不过这一切都不是问题,因为谷歌在,即使偶尔谷歌被挡了,还有百度可以顶一下...问题与解决方法列举如下:安装php与apache的问题: 不要用apt-get install安装,这样得到的版本可能与你需要的不同,具体编译安装方法见http://ifeixiang.sinaapp.com/?p=253当然,如果你执意要用apt-get install安装的话也没关系,因为方便嘛 阅读全文
posted @ 2012-04-28 14:19 ifeixiang 阅读(201) 评论(0) 推荐(0) 编辑