git初步用法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了git初步用法相关的知识,希望对你有一定的参考价值。
三、 Gerrit的注册及使用
- 1. 简介
Gerrit为代码审核工具,git提交的代码,必须经过审核才能合入到正式的版本库中。
- 2. 注册步骤
(1) 向部门配置管理员申请Gerrit账号。
(2) 登陆部门提供的服务器。使用个人github账户进行登陆。
(3) 首次登陆,需要填写一些基本信息
Username——注册账号的用户名
Fullnmame——gerrit中显示的用户名
Email——统一使用个人分配的公司邮箱,设置过程会接收到一份验证邮件
(4) 配置public key
点击网页右上角登陆用户名处,选择下拉菜单中settings
选择SSH Public Key一项
点击Add Key添加在本机生成的public key,生成方法可参照网页提示或在网上查找
(5) 通知配置管理员添加相关代码权限
- 3. 使用介绍
(1)基本
All->Open 所有正在等待审核的代码提交单
All->Merged 所有已经审核通过的代码提交单
All->Abandoned 所有被丢弃的代码提交单
注意:每次本地提交完代码后,需要到网页上查看是否提交成功,状态是否出现冲突,如图第一条中的状态为代码冲突,需要重新拉取最新代码后解完冲突再上传
(2)代码下载
Project ->List,可以查看所有权限以内的的代码工程,点击其中一个进入代码工程菜单,
进入后可看到工程代码下载的地址,git clone……
注意,需要切换至clone with commit-msg hook, SSH的选项地址,才可以下载。
复制地址后粘贴至git窗口即可启动下载。
(3)更多gerrit使用方法,查看Documentation选项
四、 Git使用方法及规范
- 1. git配置用户名及邮箱
git config --global user.email 邮箱名(必须和gerrit设置的一致)
git config --global user.name 用户名
- 2. git下载产生Change-ID的commit_msg文件
commit_msg文件用于自动为每个提交生成Changes-Id,任何一个代码提交,必须有Changes-Id才能够上传成功。如执行前面步骤后,工程文件夹下仍无commit_msg文件,则执行以下操作步骤。
(1)文件下载
在库工程目录中输入以下语句:
scp -p -P 29418 gerrit用户名@服务器连接
(2)设置git全局配置文件
以上文件下载,必须每次创建代码工程时,都必须将commit-msg文件拷贝到对应的.git/hooks/文件才会生效。设置全局的文件配置,则无需每次都进行以上下载或拷贝操作。
A. 创建一个全局的git配置目录 .git-template/
B. 将以上文件目录配置到git中,git config --global init.templatedir ‘~/.git-template’
C. 创建目录mkdir –P ~/.git-templates/hooks
D. 将下载好的commit-msg文件拷贝至以上目录,并做提权操作chmod a+x commit-msg
E. 重新下载git库,其对应的.git/hooks目录下就会自动拷贝了commit-msg文件了
- 3. 使用git进行代码开发的过程
(1) 初始化代码仓库
复制gerrit网页的下载地址进行下载
(2) 切换开发分支
进入对应工程代码仓目录,
git branch –a 查看该工程所有代码分支
git checkout –b 本地分支名 origin/远程分支名 创建指向远程分支的本地分支
git checkout 本地分支名 切换本地分支
注意:代码开发时,需要在指定的代码分支下进行开发,否则无法提交代码。
(3) 查询提交记录
git log 查看当前分支的提交记录
git log 分支名 查看指定分支的提交记录
(4) 开发代码提交
A. 需要进行代码提交时,git status查看代码修改情况是否正确
B. git add –A将所有修改文件加入缓存区
C. git commit生成一条提交,在弹出的窗口中写入 i,然后写注释
D. 退出编辑注释步骤:Esc > : > wq
E. 消息git log 查看是否提交成功,提交是否产生changes-ID
F. git fetch --all 将远程代码同步到本地
G. git rebase 将远程代码对应分支与当前分支代码合并
H. 出现合入冲突,需要手动解决冲突后,执行
git add –A 和 git rebase –continue
I. git log 查看提交是否合入成功
J. git push origin HEAD:refs/for/分支名称 将本地提交上传服务器,等待审核
注意:每次上传代码前,必须执行同步远程代码的步骤,否则会导致无法合入代码。
提交命令补充:
git reset 单号 取消提交单
git push origin HEAD:refs/for/分支名称 快捷输入方式:
Ctrl+R 然后输入git p 然后按Tab
追加代码到未审核的代码块里,如果之前提交的代码已被审核则无法追加:
1、git commit –amend
2、git push …
(5) 更新本地后台代码
A、 查看状态是否被更改git status
B、 若被更改则git add -A
C、 然后重置本地代码更改git reset --hard
D、 更新分支git fetch --all
E、 合并到本地代码 git rebase
以上是关于git初步用法的主要内容,如果未能解决你的问题,请参考以下文章