1.git命令行操作
1.1)本地库初始化
git init:
1.2)设置签名(区分不同开发人员身份)
形式:姓名:tom 邮箱:xxxxxxx@xxx.com
命令:
·项目级别/仓库级别:仅在当前本地库范围内有效(优先级更高)
git config user.name tom
git config user.email xxxx@qq.com
·系统用户级别:登陆当前操作系统的用户范围
git config --global user.name tom
git config --gilbal user.email xxxx@qq.com
1.3)基本操作:
查看状态
git status:
将文件提交到暂存区
git add 文件名:
将文件从暂存区删除
git rm --cached filename:
提交文件(输入set nu进入vim文本编辑器)
git commit 文件名:
git commit -m "commit message" 文件名:
查看历史记录
git log 多屏显示控制方法:空格向下翻页,b向上翻页,q退出
git log pretty=oneline
git log --oneline
git reflog
前进后退(也可以用来恢复删除文件)
git reset --hard 局部索引值
git reset --sort
git reset --mixed
git reset --hard head^
git reset --hard head~2(数字)
比较文件差异
git diff 文件名:将工作区文件和暂存区比较
git diff [本地库中历史版本] 文件名
1.4)分支管理
(1.4.1)在版本控制过程中,使用多条线,同时推进多条任务
(1.4.2)分支的好处
-同时并行推进多个功能开发,提高开发效率
-各个分支在开发过程中,如果某一个分 支开发失败,不会对其他分支有任何影响。失败的分支删除重新开始即可。
(1.4.3)分支操作
创建分支
git branch 分支名
查看分支
git branch -v
切换分支
git checkout 分支名
合并分支
1.切换到接收修改的分支上(被合并,增加新内容)
2.执行merge命令
解决冲突
1.编辑文件,删除特殊符号
2.把文件修改到满意的程度,保存退出
3. git add 文件名
4. git commit -m "提交信息" ;此时一定不能带文件名
1.5)本地库和远程库连接
查看远程库地址别名
git remote -v
设置远程库地址别名
git remote add 别名 远程库地址
推送操作
git push 远程地址库别名 要推送的分支
1.5)克隆操作
git clone 远程地址
完整的把远程库下载到本地
创建origin地址别名
初始化本地库
1.6)拉取
pull=fetch+merge
git fetch 远程库地址别名 远程分支名
git merge 远程库地址别名/远程分支名
git pull 远程库地址别名 远程分支名
1.7)解决冲突
--如果不是基于github远程库的最新版所做的修改,不能推送,必须先拉取
--拉取下来后如果进入冲突状态,则按照“分支冲突解决”操作解决即可
1.8)ssh登陆
进入家目录:cd ~
ssh-keygen -t rsa -C xxxxxxxx@xx.com
进入.ssh目录
cat id_rsa.pub 复制里面的内容,在github里面,settings里面有一个ssh,在里面添加GPG keys
git工作流