Git的使用
Git是分布式管理服务器和客户端都有版本控制的能力,都能进行代码的提交,合并
分为工作区,暂存区和仓库区(本地仓库, 远程仓库)
工作区进行文件的添加,删除,修改------->add------>暂存区---->commit---->本地仓库----->push---->远程仓库(从远程仓库克隆clone, 从远程仓库拉文件pull)
Git单人本地仓库:
安装git: apt-get install git---->查看git安装结果 git
创建项目: 任意创建一个文件夹(Desktop/test)
创建本地仓库: 进入项目文件夹-->git init创建之后会看到一个隐藏文件(.git)
配置个人信息: git config user.name "XXX"
git config user.email "XXXX"
创建文件,git log 可以查看到个人信息
查看文件状态:git status(文件显示为红色代表工作区文件, 绿色代表暂存区)
工作区文件添加到暂存区: git add .(项目中所有文件)/git add XX.py(指定文件)
暂存区文件提交到本地仓库:git commit -m "备注信息"
添加和提交合并命令:git commit -am "版本描述"
查看历史版本:git log/git reflog
暂存区回退版本:
git reset --hard HEAD^ (HEAD:代表当前最新版本,HEAD^:代表当前最新版本的前一个版本,HEAD^^:代表当前最新版本的前两个版本,HEAD~1:代表当前最新版本的前一个版本,按数字类推)
git reset --hard 版本号(回退到指定的版本号)
撤销修改:
撤销工作区代码: git checkout 文件名
撤销暂存区代码: 第一步:暂存区代码撤销到工作区: git reset HEAD 文件名 第二步:撤销工作区代码: git checkout 文件名
Git远程仓库:
1:登录注册Github
2:创建仓库入口
3:编辑仓库信息
4:仓库创建完成
5:查看仓库地址
当需要和Github上的仓库交互,需要将电脑的公钥添加进入Github账户中
1:配置ssh公钥入口
2:修改电脑git配置(在电脑的/home目录下的.gitconfig文件的账户和email改成和Github的账户,email一直)
3:生成ssh公钥
ssh-keygen -t rsa -C "邮箱地址"
cd ~/.ssh目录下面的id_rsa_.pub中的文件内容即为ssh公钥
4:配置ssh公钥
将从电脑中获取的ssh公钥,添加到Github中.
克隆项目: git clone 地址(Github中仓库的https/ssh地址)
推送项目到远程仓库: git add .--->git commit -m "描述" --->git push
多人协同开发:每次都要git pull 拿到最新的代码
- 要使用git命令操作仓库,需要进入到仓库内部
- 要同步服务器代码就执行:
git pull
- 本地仓库记录版本就执行:
git commit -am '版本描述'
- 推送代码到服务器就执行:
git push
- 编辑代码前要先
pull
,编辑完再commit
,最后推送是push
代码冲突
- 提示:多人协同开发时,避免不了会出现代码冲突的情况
- 原因:多人同时修改了同一个文件
- 危害:会影响正常的开发进度
- 注意:一旦出现代码冲突,必须先解决再做后续开发
解决完冲突代码之后,依次需要add, commit, push
标签:
现在本地打标签: git tag -a 标签名 -m "标签描述"
推送标签到远程仓库: git push origin 标签名
删除本地和远程标签
git tag -d 标签名(本地)
git push origin --delete tag 标签名(远程)
操作分支:
查看当前分支: git branch
创建并切换到dev分支:git branch -b dev
设置本地分支跟踪远程指定分支(将分支推送到远程): git push -u origin dev
管理dev分支源代码:add, commit, push
合并分支:
先切换到master分支上: git checkout master
合并分支:git merge dev
合并分支操作到远程仓库: git push