那段时间进行了一个关于同步文件的项目,其中因为涉及到效率问题,用到了部分git的技术,记录下心得。

当我们在git服务器(我用到的是ubantu)上面安装好了git的包之后,用以下几个命令进行安装。

创建git的账号

sudo useradd -m git
sudo passwd git

 

创建一个git的仓库

sudo mkdir /home/git/repositories

设置git仓库权限
udo chown git:git /home/git/repositories
sudo chmod 755 /home/git/repositories

初始化全局设置
git config --global user.name "mixls"
git config --global user.email "mixls@sina.com"

初始化 仓库init
$ su git
$ sudo git init
$ sudo git --bare init(服务器上的仓库需要这样init 也可以回头再用git config --bool core.bare true随时修改)

客户端 clone指令下载数据
$ git clone ssh://git@192.168.1.15:port/home/git/repositories/

$ git clone git://git@192.168.1.15:port/home/git/repositories/ (git的协议有三种ssh,git,http/https)

添加 提交 基本指令
$ git add
$ git commit
$ git push
(提示需要master分支 git push origin master,git的工作目录都是在至少一个分支上面的,默认是master分支,可以指定从哪个分支push到服务器上的那个分支上,如果没有需要创建分支)
(提示 权限不对 server端:sudo chmod 777 路径 -R)

我这边还有一个问题是,需要本地仓库是否修改,都需要把远程服务器上的文件pull下面,需要特殊处理

 

$ git fetch origin 获取远程最新的版本信息

$ git add . 添加本地untracked的文件到被跟踪

$ git reset --hard origin/master 强制恢复到最新master的最新版本(会把本地修改的、新添加的无关文件都该还原的还原,该删除的删除掉)

 

其他的还有本地的仓库整个提交上去,一般比较方便的是

$ git add .

$ git commit -m "my comment 1" .

$ git push origin master

 

其他的想到再补充

posted on 2013-07-12 10:16  mixls1234  阅读(221)  评论(0)    收藏  举报