GIT 实验

服务器环境:linux + git + gitolite(gitolite是什么,说白了就是安装后建了一个仓库,管理员用户可以通过修改并上传配置文件实现GIT仓库及其权限的管理。提醒:别用那个gitosis,虽然网上到处是它的文章,但实际了它已经好几年没更新了)

@@@本地配置

   #修改 ~/.ssh/config
    host aliyun
         user git
         hostname yourgitserver.com
         identityfile ~/.ssh/mypubkey
   #确认服务器上的管理员key 与本地一致,如出现密码输入提示,则是因为ssh key 验证失败。

以下命令必要条件:环境配置完毕并可通过更新gitolite-admin仓库自动创建新仓库及用户,GITOLITE的安装配置自行GOOGLE

1、创建新仓库:MTGSTORE-SRC 名为 MTG

2、客户端克隆该项目:命名为 mtgstore

1 git clone aliyun:MTGSTORE mtgstore

1)创建文件test并提交到远程

1 git branch //查看当前分支
2 touch test
3 git add test //添加操作
4 git commit -am "create file test" //提交
5 git status //查看动作
6 git push origin master //提交到服务器
7 *初次提交时要指定分支

2)查看

1 git status
2 git ls-tree HEAD //查看暂存区
3 git remote -v //查看远程

3)新建仓库mtgv2 

1 git remote add mtgv2 aliyun:MTGSTORE
2 git remote -v 
3 git remote show mtgv2
4 git remote rm mtgv2 //删除仓库

3、创建一个名为PPZ的新分支,并创建提交一个README文件到仓库

1 git branch //查看本地分支
2 git branch -r //查看远程分支
3 git branch ppz
4 git checkout ppz
5 touch README
6 git add README
7 git commit -am "add README to ppz branch"
8 git push origin ppz:ppz

 

4、创建新项目并获取分支ppz
1)克隆项目并获取分支

1 git clone aliyun:MTGSTORE ppz
2 git branch -r
3 git checkout -t origin/ppz //-t:获取后切换到ppz分支

2)独立克隆分支

1 git clone aliyun:MTGSTORE mtgppz -b ppz 这样就是某个分支

3)比较分支

1 git diff origin/master master // origin/master 是remote repo branch ,master为local branch

5、删除分支

1 git branch -d ppz
2 git branch -D ppz //强制删除,无论如何不要这个分支了

6、命令太长,使用别名

1 git config --global alias.m 'commit -m'
2 git m "test redefined"
上一篇:解决github 打开、拉取、推送速度慢、Failed to connect to github.com port 443: Timed out等问题【转载——亲测可用】


下一篇:nginx响应超时upstream timed out (110: Connection timed out) while reading response header from upstream