Gitで間違えたgit addをキャンセルする方法

gitを使っていて、間違ったファイルをgit addしてしまった場合に、これをキャンセルする為には、以下のコマンドが使えます。

% git rm --cached 

git rmは、Working Tree (作業コピー)と index からファイルを削除するコマンドですが、 --cachedを指定する事で、 indexからのみファイルを削除する事ができます。
git addはWorking Treeからindexにファイルを追加するコマンドなので、 git rm --cachedは、git addと対をなすコマンドだと言えますね。

但是,当这个是第一次add,也就是说,在git init后的第一次add,想要回滚的时候,用上面的命令,就会出错。这个时候需要使用下面的命令。
git rm -r --cached .
END
... Read more!

Ubuntu中MySQL环境的建立

本文主要是讲述基本的LAMP环境的建立,依托的是Ubuntu。因为不是每天都在安装它,所以有一些细节在下一次安装的时候可能会忘记。作为一个笔记,放在这里保存吧。这里使用的Ubuntu是最新的9.04
1,Apache和PHP的安装

$ sudo apt-get install apache2 php5 libapache2-mod-php5 

2,MySQL,以及相关包的安装(主要是和PHP相关的包)
$ sudo apt-get install mysql-client mysql-server php5-dev php5-cli php5-common php-pear php5-mysql php5-mcrypt php5-dev php5-mhash php5-gd php5-xsl php5-xmlrpc
在安装MySQL的时候,会提示你root的密码,输入你想要设定的mysql的root的密码,并记好了。

3,MySQL的初期设定
一般我们不会直接使用MySQL的root帐号来进行操作,所以,这边我们建立一个帐户。这里建立的是一个可以操作所有库的超级帐户。
$ mysql -u root -p
Enter password: (输入你上面安装MySQL时设置的密码)

mysql> grant all privileges on *.* to (用户名)@localhost identified by '(密码)';
Query OK, 0 rows affected (0.00 sec)

mysql> select user from mysql.user where user='(用户名)'; #确认一下是否正确的创建了
+------------+
| user       |
+------------+
| (用户名) |
+------------+
1 row in set (0.00 sec)

mysql> exit # 退出MySQL环境
Bye

4,下载并安装phpMyAdmin
phpMyAdmin是一个非常方便的管理MySQL的工具。从它的www.phpmyadmin.net下载稳定版本,直接解压到/vaw/www中
$ cd /var/www
$ sudo wget "http://downloads.sourceforge.net/project/phpmyadmin/phpMyAdmin/3.2.0.1/phpMyAdmin-3.2.0.1-all-languages.tar.bz2?use_mirror=jaist"
解压后,并修改目录的名字
$ sudo tar -xjvf phpMyAdmin-3.2.0.1-all-languages.tar.bz2
$ sudo mv phpMyAdmin-3.2.0.1-all-languages phpmyadmin
安装随机字符生成工具,并且生成一个长度为46的随机字符待用。
$ sudo apt-get install libstring-mkpasswd-perl
$ mkpasswd.pl -l 46
(随机字符)

进入phpmyadmin目录,创建config.sample.inc.php的一个拷贝config.inc.php,并进行相应设置
$ cd ./phpmyadmin
$ sudo cp config.sample.inc.php config.inc.php
$ sudo vi config.inc.php

# 把上面生成的随机字符放到相应的位置
$cfg['blowfish_secret'] = '';
↓
$cfg['blowfish_secret'] = '(随机字符)';
然后可以打开web浏览器输入你的地址,http://(服务器地址)/phpmyadmin/,然后回车。没有出现以外的话,你就应该可以看到phpMyAdmin的登陆界面。如果没有顺利打开的话,可以尝试重新启动一下apache。

... Read more!

Git,升级到ubuntu 9.04 jaunty后,客户端push时会遇到错误

升级到ubuntu 9.04 jaunty后,客户端push时会遇到错误:

Traceback (most recent call last):
File "/usr/bin/gitosis-serve", line 5, in
from pkg_resources import load_entry_point
File "/usr/lib/python2.6/dist-packages/pkg_resources.py", line 2562, in
working_set.require(__requires__)
File "/usr/lib/python2.6/dist-packages/pkg_resources.py", line 626, in require
needed = self.resolve(parse_requirements(requirements))
File "/usr/lib/python2.6/dist-packages/pkg_resources.py", line 524, in resolve
raise DistributionNotFound(req) # XXX put more info here
pkg_resources.DistributionNotFound: gitosis==0.2
fatal: The remote end hung up unexpectedly

尝试aptitude reinstall gitosis,还是没有用。从gitosis源代码重新编译了一下,可以了。

$ git clone git://eagain.net/gitosis
$ cd gitosis
$ sudo python setup.py install

END
... Read more!