Git 常用命令整理

最近在公司的服务器上安装了Git Sever,开始从SVN转向到Git了,整理了一些在Git常用的命令。

取得Git仓库

初始化一个版本仓库

git init

Clone远程版本库

git clone git@xbc.me:wordpress.git

添加远程版本库origin,语法为 git remote add [shortname] [url]

git remote add origin git@xbc.me:wordpress.git

查看远程仓库

git remote -v

提交你的修改

添加当前修改的文件到暂存区

git add .

如果你自动追踪文件,包括你已经手动删除的,状态为Deleted的文件

git add -u

提交你的修改

git commit –m "你的注释"

推送你的更新到远程服务器,语法为 git push [远程名] [本地分支]:[远程分支]

git push origin master

查看文件状态

git status

跟踪新文件

git add readme.txt

从当前跟踪列表移除文件,并完全删除

git rm readme.txt

仅在暂存区删除,保留文件在当前目录,不再跟踪

git rm –cached readme.txt

重命名文件

git mv reademe.txt readme

查看提交的历史记录

git log

修改最后一次提交注释的,利用–amend参数

git commit –amend

忘记提交某些修改,下面的三条命令只会得到一个提交。

git commit –m "add readme.txt"
git add readme_forgotten
git commit –amend

假设你已经使用git add .,将修改过的文件a、b加到暂存区

现在你只想提交a文件,不想提交b文件,应该这样

git reset HEAD b

取消对文件的修改

git checkout –- readme.txt

基本的分支管理

创建一个分支

git branch iss53

切换工作目录到iss53

git chekcout iss53

将上面的命令合在一起,创建iss53分支并切换到iss53

git chekcout –b iss53

合并iss53分支,当前工作目录为master

git merge iss53

合并完成后,没有出现冲突,删除iss53分支

git branch –d iss53

拉去远程仓库的数据,语法为 git fetch [remote-name]

git fetch

fetch 会拉去最新的远程仓库数据,但不会自动到当前目录下,要自动合并

git pull

查看远程仓库的信息

git remote show origin

建立本地的dev分支追踪远程仓库的develop分支

git checkout –b dev origin/develop

Nginx实战基础篇五 如何让用户通过用户名密码认证访问我们的web站点

Nginx实战基础篇五 如何让用户通过用户名密码认证访问我们的web站点

有时我们会有这么一种需求,就是你的网站并不想提供一个公共的访问或者某些页面不希望公开,我们希望的是某些特定的客户端可以访问。那么我们可以在访问时要求进行身份认证,就如给你自己的家门加一把锁,以拒绝那些不速之客。

实验环境:

现在公司开通了一个内部使用网站为http://www.luzirq.com,要求所有人查看网页信息之前都必须要输入内定的用户名及密码方可浏览网页

http://www.luzirq.com进行测试。

http://www.luzirq.com 192.168.100.107

DNS1 192.168.100.102

一、查看当前系统参数

  1. [root@rhel6u3-2 ~]# uname –r  //查看系统内核版本号
  2. 2.6.32-279.el6.i686
  3. [root@rhel6u3-2 ~]# cat /etc/redhat-release //查看系统版本号
  4. Red Hat Enterprise Linux Server release 6.3 (Santiago)

 

二、编辑虚拟主机配置文件

 

  1. [root@rhel6u3-7 ~]# vim /usr/local/nginx/conf/nginx.conf //主配置文件中http字段中添加以下语句,将虚拟主机的配置文件指向www.luzirq.com
  2. include /usr/local/nginx/server/www.luzirq.com;
  3. [root@rhel6u3-7 ~]# vim /usr/local/nginx/server/www.luzirq.com
  4. server {
  5.      listen       80;  //监听端口为80
  6.      server_name  www.luzirq.com;  //虚拟主机网址
  7.       location / {
  8.             root   sites/www1;  //虚拟主机网站根目录
  9.             index  index.html index.htm;  //虚拟主机首页
  10.             auth_basic “secret”;  //虚拟主机认证命名
  11.             auth_basic_user_file /usr/local/nginx/passwd.db; //虚拟主机用户名密码认证数据库
  12.         }
  13.         location /status {
  14.                 stub_status on;  //开启网站监控状态
  15.                 access_log /usr/local/nginx/logs/www.luzirq.com; //监控日志
  16.                 auth_basic “NginxStatus”; }
  17.     }

 

三、通过htpasswd命令生成用户名及对应密码数据库文件。

 

  1. [root@rhel6u3-7 server]# htpasswd -c /usr/local/nginx/passwd.db username  //创建认证信息,username为认证用户名
  2. New password: *******  //输入认证密码
  3. Re-type new password: ********  //再次输入认证密码
  4. Adding password for user username
  5. [root@rhel6u3-7 server]#
  6. [root@rhel6u3-7 ~]# chmod 400 /usr/local/nginx/passwd.db  //修改网站认证数据库权限
  7. [root@rhel6u3-7 ~]# chown nginx.  /usr/local/nginx/passwd.db  //修改网站认证数据库属主和属组
  8. [root@rhel6u3-7 ~]# cat /usr/local/nginx/passwd.db  //可以看到通过htpasswd生成的密码为加密格式
  9. username:8eZAz7BqcrXmY
  10. [root@rhel6u3-7 ~]#

 

四、平滑重启nginx服务

 

  1. [root@rhel6u3-7 ~]# /etc/rc.d/init.d/nginx reload  //平滑重启nginx服务
  2. nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
  3. nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
  4. Reloading nginx:                                           [  OK  ]

 

五、DNS服务器上添加www1 A记录

 

  1. www    A   192.168.100.107

 

最后至为关键的位置(独门绝技,此方法在网上是无法搜到的):对于nginx环境的linux是不支持htpasswd命令的,它是属于apache下的,需要安装httpd才行,但是在nginx环境下安装,难免会出现冲突,安装nginx和apache非常复杂,没有lnmpa是不很难配置成功了。网上不管怎么搜,都是搜不到解决方案的,武汉网站建设在这里献上亲自经历的方法:在本地的apache下用htpasswd生成密码串,然后从本地生成之后复制到nginx上。或者自己写一个php代码,武汉网站建设也献上下载。

nginx环境htpasswd下载

个人认为比较有用的win10系统快捷键

win10系统渐渐替换了win8.1,一些改进确实耳目一新,不过最大特点还是回归了,下面是一些个人认为比较重要的快捷键:

Win+C:强制调出Charm栏。

Win+左/右/上/左上/左下/右上/右下:将窗口快速缩放至1/2分屏、1/4分屏,其中1/4分屏为Win10新增功能,对应快捷键为Win+左上/左下/右上/右下。

Win+E:调出“主页”窗口。“主页”是Win10新增功能,包含最近访问文件夹、最近访问文件、收藏夹等,以资源管理器作为载体。

Win+Home:仅保留当前窗口,其余窗口最小化。

Win+Enter:直接启动“讲述人”。

Win+数字键:快速打开任务栏上已固定应用,比如Win+1打开第一个应用、Win+2打开第二个应用……以此类推,同时支持Metro应用。

Win+T:在任务栏图标间切换,但不打开,相当于鼠标悬停。

Alt+Tab:窗口切换器,当然Win10已经将它改进了,新版缩略图更大,并且是全屏显示。

Win+Tab:Win7时代的Flip3D(3D窗口切换器),到了Win10中变成了虚拟桌面切换器。嗯!和点击任务栏上那个按钮一个效果!

Ctrl+Shift+ESC:直接打开任务管理器。

Alt+左/右/上:快速跳转至上一个文件夹/下一个文件夹/父文件夹(仅限资源管理器)。

F11:沉浸式传统窗口布局(仅限传统程序)。

Win+Ctrl+左/右:切换当前虚拟桌面。

Win+Ctrl+D:建立新虚拟桌面。

Win+Ctrl+F4:关闭当前虚拟桌面(已打开窗口会自动移动到下一个桌面,不会丢失!)。

Win+D:显示传统桌面(即窗口最小化,沉浸式Metro需按动两下)。

Win+I:打开Charm栏→设置菜单(非新版Charm菜单)。

Win+X:打开简易版开始菜单,这个用来启动一些系统级程序还是很方便的。

Win+Prt Sc:屏幕截图。按下该快捷键后,屏幕会瞬间暗一下,并伴有“咔嚓”一声,视觉感和手机上的截屏软件很像,截图自动存放至“图片”文件夹。

Ctrl+V:这是Win10命令提示符里新增的,功能就是将剪切板内容直接粘贴到提示符内。而在此之前,这组快捷键所能得到的结果,仅仅是一个^v。

以上是笔者结合自己经验,挑选的一些日常使用率较高的快捷键,诸如大家熟悉的Win+L、Win+R之类并未涉及。当然Win10是一款全新系统,短短两三周的试用是不可能将其探寻完整的。如果你在试用过程中也发现了一些不一样的按钮,也欢迎和我们一同分享,祝大家Win10玩得愉快!

win10|系统快捷键

win10|系统快捷键

WinRAR怎么样注册,WinRAR破解方法

WinRAR 是一款全球占有率极高的压缩软件,是我们装机必备软件,今天教大家怎么免费注册这个软件,否则这个软件只有40天的使用限制!(转起理由看最下方附)

下载WinRAR注册机,下载安装文件以及注册机,http://pan.baidu.com/s/1mghXpiS,如果你的系统没有安装winRAR的话直接选择一个版本安装即可,如果已经安装了,直接选择WinRAR注册机即可!

安装完你的winRAR软件后,双击WinRAR注册机文件启动注册机,如下图一所示!在注册用户栏位你可以手动输入你想注册的用户名,如下图二。输入完成点击“”generate“”按钮!

出现提示对话框如下图,点击确定即可!

d439b6003af33a875d659252c45c10385343b56a.jpg

生成的注册文件自动会找到winrar安装文件夹目录,点击保存即可!

注册文件导入成功提示框,点击确定按钮!完成注册!

738b4710b912c8fcdcac6b85fe039245d688211e.jpg

 

738b4710b912c8fcdcac6b85fe039245d688211e.jpg

 

  1. 现在来看看是否成功!点击任意压缩文件,点击上方菜单的-帮助–关于WinRAR!

    fcfaaf51f3deb48f64ea3c96f21f3a292cf578f3.jpg

  2. OK,注册成功,已成功注册了!

附:此篇文章是由百度转载而来,为什么要转载,是有原因。

在使用过程中,遇到一些盲点,现把自己的过程写于下面:

如果是win7的用户,再点击注册的时候,会出现获取最高权限,

当点确定以后,发现保存位置不对了。

那么这时候,将生成的文件直接保存自己能找到的任意盘符

然后找到winrar安装的根目录:如我电脑上:

562c11dfa9ec8a13e398caa8f503918fa1ecc0fc.jpg 279759ee3d6d55fb3998eb6e6f224f4a20a4dd18.jpg 1f178a82b9014a90acc3dbf5ab773912b21beefd.jpg 8d5494eef01f3a293b2c9e119b25bc315d607c0c

直接将刚才保存的文件(rarreg.key)直接复制到里面,一切就ok了。

 

 

DEDECMS织梦 真正的随机文章的调用方法

关于dedecms随机文章是老生常谈了,原本很简单的一问题,现在还是捡起来说说,供大家借鉴一下吧

大家都知道随机标签 rand,调用标签也知道怎么写:

{dede:arclist row=’1000′ pagesize=’10’ titlelen=’35’ orderby=’rand’}

[field:textlink/]

{/dede:arclist}

但是仅仅有这个,在静态页面上是不能达到真正意义上的随机的,下面就是如何设置了:

将你需要随机生成的那段代码(上面调用标签)加入到新建自定义宏中,然后使用JS调用,将JS代码插入到模板中
如下:
<script src=’/plus/mytag_js.php?aid=12&nocache=1′ language=’javascript’></script>
通过后台的JS调用生成的JS代码是没有nocache=1

为了能兼容多个版本,建议nocache=1还是加上为好,这样直接在前台需要的地方复制上面的这个js代码即可调用随机代码了。

phpcms那点事——setting_models

关于phpcms的setting_models[”]一说,网站建设麦芒在这里简单说下:

今天在做phpcms的二次开发的时候,突然遇到一个不解的问题,一客户要求将phpcms的网页模块进行二次开发,在phpcms\modules\yp\index.php文件里面就有如下的一段代码:

//列表页推荐位ID,模块配置推荐位第二个为列表页推荐位配置
$posid = intval($this->setting[‘position’][2][‘posid’]);
$siteid = SITEID;
$SEO = seo(SITEID, ”, $this->setting[‘seo_title’], $this->setting[‘seo_description’], $this->setting[‘seo_keywords’]);
//产品modelid
$product_id = $this->setting_models[73];
$buy_id = $this->setting_models[76];
$news_id = $this->setting_models[72];//这句为麦芒添加

看到如何得来”产品modelid“感觉很困惑,因为麦芒想得到”news_id”,所以才困惑不解的。

困惑点就是setting_models 里面为什么是73、76、72 ???

在数据中到处进行了查找,发现并没有任何的蛛丝马迹?难道这个setting_models里面的数字无中生有,我觉得不可能,程序中一切皆对象,不相信不存在…

编者麦芒就通过不断的var_dump()去调试,终于找到了缘由,原来$this->setting_models是一缓存数组,显然缓存是由文件缓存函数来生成的…  到目前为止,终于真相大白了

 

lnmp取消nginx目录PHP执行权限(此法亦用可多站点的安全设置,尤其dedecms)

今天在处理一dedecms的安全配置的时候,涉及了nginx配置文件的设置,当然apache就比较简单了,下面就nginx简单说下设置步骤:

首先要编辑nginx的虚拟主机配置,在fastcgi的location语句的前面按下面的内容添加:

1、单个目录去掉PHP执行权限

  1. location ~ /attachments/.*\.(php|php5)?$ {
  2. deny all;
  3. }

将attachments目录的PHP执行权限去掉。

2、多个目录去掉PHP执行权限

  1. location ~ /(attachments|upload)/.*\.(php|php5)?$ {
  2. deny all;
  3. }

将attachments、upload这二个目录的PHP执行权限去掉。

附上一个完整的虚拟主机的例子供参考:

  1. server
  2. {
  3. listen 80;
  4. server_name www.xker.com;
  5. index index.html index.htm index.php;
  6. root /home/wwwroot/bbs.vpser.net;include discuz.conf;
  7. location ~ /(attachments|upload)/.*\.(php|php5)?$ {
  8. deny all;
  9. }
  10. location ~ .*\.(php|php5)?$
  11. {
  12. fastcgi_pass unix:/tmp/php-cgi.sock;
  13. fastcgi_index index.php;
  14. include fcgi.conf;
  15. }
  16. access_log off;
  17. }

添加完执行:/usr/local/nginx/sbin/nginx -t测试配置文件,执行:/usr/local/nginx/sbin/nginx -s reload 载入配置文件使其生效。

php技术开发友情提示:注意顺序,一定要放在 “location ~ .*\.(php|php5)?$” 一行上面,不然不会生效。

今天是一个好日子,luz工作室博客在今天正式上线

准备了几载,终于在今天,http://www.luzirq.com 正式上线了,为什么非要选择今天呢,在今后的每一天请听武汉建站luz工作室一一道来……

武汉建站luz工作室是一个集网站建设,网站优化,seo,仿站,软件开发,网页制作,源码修改等网络技术开发的帮助一切所需要的企业及个人排忧解难的一个团体。

关于这个工作室的更多详尽的介绍,也将在后面慢慢的”浮出水面“。