搭建本地服务器

来源:互联网 发布:python主要用来做什么 编辑:程序博客网 时间:2024/06/11 14:03

一、搭建本地服务器

1、在ubuntu上安装ssh

 apt-get install openssh-server

2、安装git服务器

apt-get install git-core

3、创建用户git,用来管理运行git服务

adduser git

设置密码


4、创建一个空的仓库(仓库目录为:/home/yue/work0615/gitserver/gitServer/newgit/

git --bare init 

创建一个所谓的裸仓库,之所以叫裸仓库是因为这个仓库只保存git历史提交的版本信息,而不允许用户在上面进行各种git操作,如果你硬要操作的话,只会得到下面的错误(”This operation must be run in a work tree”)


5、测试和提交文件到服务器

cd  /home/yue/work0615/gitserver/gitServer/testgit

git clone git@192.168.17.201:/home/yue/work0615/gitserver/gitServer/newgit/


6、提交文件、添加注释、提交到本地服务器

git add .

git commit -m "测试1"

git push origin master  (输入ubuntu git 用户密码)


7、git在push的时候出现insufficient permission for adding an object错误

Counting objects: 3, done.
Writing objects: 100% (3/3), 238 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
remote: error: insufficient permission for adding an object to repository databa                                                                                        se ./objects
remote: fatal: failed to write object
error: unpack failed: unpack-objects abnormal exit
To git@192.168.17.201:/home/yue/work0615/gitserver/gitServer/newgit/
 ! [remote rejected] master -> master (unpacker error)
error: failed to push some refs to 'git@192.168.17.201:/home/yue/work0615/gitserver/gitServer/newgit/'                                               

原因:
git库权限的问题
$ ls -la,查看git库的所有者

解决:
在git库目录下:
$sudo chown -R git:git git库


二、将本地仓库服务器代码提交到远程服务器

1、注册一个github账号


2、新一个工程


3、创建本地空仓库

git init 

4、添加文件

git add .

5、添加注释

git commit -m "xxx"

6、设置远程服务器路径

git remote add origin https://github.com/rihuiwangxun/test.git
查看服务器地址 git remote -v


7、提交代码到远程服务器

git push -u origin master   (设置账号和密码)
8、修改远程仓库路径

先删后加

git remote rm origin
git remote add origin [url]
9、版本回退
git log命令显示从最近到最远的提交日志:信息如下
root@yue-virtual-machine:/home/yue/work0615/test/demoSql# git logcommit c19a061a17a407b2dd4b09a9012637b6e895dbecAuthor: root <root@yue-virtual-machine.(none)>Date:   Wed Mar 29 15:55:46 2017 +0800    添加测试接口commit a1d7250d5ae2965d9dc3210cfbdd45cfc2c4927bAuthor: root <root@yue-virtual-machine.(none)>Date:   Wed Mar 29 15:49:26 2017 +0800    初始化版本1
commit a1d7250d5ae2965d9dc3210cfbdd45cfc2c4927b  表示commit版本号
回退上一个版本:
root@yue-virtual-machine:/home/yue/work0615/test/demoSql# git reset --hard HEAD^                                                         HEAD is now at a1d7250 初始化版本1

回退到指定版本
git reset --hard a1d7250
Git提供了一个命令git reflog用来记录你的每一次命令
10、回退版本提交到服务器
  注: 回退版本只能在本地回退,不能在服务器仓库回退
  回退后的版本提交并更新服务器命令:
  git push -f -u origin master
                                             
0 0
原创粉丝点击