git使用说明
git admin
git admin 用于处理用户的各种访问权限 ,群组管理 ,通过gitosis的仓库进行管理 。
gitosis仓库
主gitserver服务器的管理任务交给gitosis仓库管理 。可以授权特定用户对该仓库的访问,读写,授权。
* gitosis.config : git群组管理配置
group 项目名称
members 项目授权用户
writable 项目用户权限
- keydir 用户公钥管理
用来保存用户公钥信息 ,免密码的提交、push、pull等的操作。
设置ssh的禁用密码操作可以通过设置配置ssh的passwordauthori.. 为no来实现
- 更改操作
该管理仓库也是作为一个git仓库来进行操作的,本地设置完成后,需要提交 ,推送才能生效 。而 ssh的设置需要重启ssh服务生效。
git一般账户
允许一般账户对一般项目的读写
项目的添加,添加仓库
- 本地创建项目目录 prj
- 执行git init命令
- 添加远程仓库 git remote add origin git@git-server-addr:prj.git
- 添加测试文件 touch README
- 提交 git add . & git commit -am “create first file for remote project[prj]”
- 推送 git push origin master
git项目移除
废弃git项目需要从远程移除
手动移除 ,没有发现有效的远端移除操作。
1. 进入需要移除的项目delprj
2. 执行移除 git remote remove origin
3. 进入git服务器(由于服务器设置了禁用shell ,不能直接在ssh中进行删除操作)进入/home/git/repo,…..下手动删除delprj.git文件
4.管理员用户删除对应的delprj组的用户权限。
git分支管理
- git本地分支创建
- git checkout -b localBranch 创建本地分支用于本地代码修改。
- 本地分支创建完成,修改之后,需要从当前分支进行提交。提交到相应的远程分支。
git远程分支创建
- git fetch
获取远程分支 ,并不会自动执行merge
- git pull
获取远程分支 ,并执行自动merge
git 本地分支
git通过创建本地分支执行代码修改 ,代码整合 ,之后通过其他分支或主分支进行提交。- git push 时候出现remote: error: insufficient permission for adding an object to repository database ./objects 等错误
- git push 时候出现remote: error: insufficient permission for adding an object to repository database ./objects 等错误
出现问题原因为文件的所有者不匹配, 在服务器对应的仓库执行
chowner -R git:git . 命令,改变文件的所有者。