git的基础操作
一、Git理论
(一)工作区域
基本概念:
-
工作区:平时存放项目代码的地方。
-
暂存区(Stage/Index):暂存区,用于临时存放你的改动,事实上它只是一个文件,保存即将提交到 文件列 表信息
-
版本库:又称本地仓库,这个不算工作区,而是 Git 的版本库,里面有你提交到所有版本的数据。
-
远程仓库:托管代码的服务器
(二)工作流程
-
在工作目录中添加、修改文件;
-
将需要进行版本管理的文件放入暂存区域;
-
将暂存区域的文件提交到git仓库。 因此,git管理的文件有三种状态:已修改(modified),已暂存(staged),已提交(committed
二、基础操作
日常使用命令:
-
先更新远程仓库 (防止其他人更新过项目)
-
把本地修改好的文件推送到本地仓库
-
再把本地仓库推送到远程仓库
(一)Git基础配置
-
生成公钥
设置绑定SSH公钥,实现免密码登录!
# 进入 C:\Users\自己的用户名\.ssh 目录 ssh-keygen -t rsa
#在成功后在终端输入
ssh -T git@gitee.com
首次使用需要确认并添加主机到本机SSH可信列表。若返回 Hi XXX! You’ve successfully authenticated, but Gitee.com does not provide shell access. 内容,则证明添加成功。
- 将公钥信息public key 添加到Gitee账户中即可!
(二)项目上传
- 初始化仓库
去到项目的位置,右键选择 Git Bash Here
能快速打开。
# 使用项目目录作为 Git 仓库,我们只需使它初始化。
#该命令执行完后会在当前目录生成一个 .git 目录
git init
- 关联远程仓库地址(需要创建在远程仓库上面创建一个空白库存)
#添加远程仓库
git remote add origin 远程仓库链接
# 设置本地分支和远程分支对应上,其中 master是本地分支(默认)
git branch --set-upstream-to=origin/master master
# 更新版本,获取远程仓库的项目新的版本
git pull
-
将本项目本上传到远程仓库
#提交项目到本地缓存区 git add . #提交项目到本地仓库中,并添加提交信息 git commit -m "第一次提交" #表示将远程origin主机的master分支拉取过来和本地的当前分支进行合并 #git pull <远程主机名> <本地分支名> git push origin master
(三)其它基础命令
#克隆远程仓库项目
git clone 远程仓库链接
#回退版本
git reset
#下载远程代码并合并
git pull
#提交到远程代码并合并
git push
#强制提交到远程仓库
git push -f origin master
三、分支操作
可以理解多线程:主线程在走,不影响子影响。 它们是平行,互不影响。 但是,他们可以进行合并。 在合并的时候就需要做一些处理了。
master主分支应该非常稳定,用来发布新版本, 一般情况下不允许在上面工作,工作一般情况下在新建的dev分支上工作,工作完后,代码稳定了,再合 并到主分支上来。 比如上要发布,或者说dev分支代码稳定后可以合并到主分支master上来。
(一)git分支中常用指令
# 列出所有本地分支
git branch
# 列出所有远程分支
git branch -r
# 新建一个分支,但依然停留在当前分支
git branch [branch-name]
# 新建一个分支,并切换到该分支
git checkout -b [branch]
# 合并指定分支到当前分支
git merge [branch]
# 删除分支
git branch -d [branch-name]
# 删除远程分支
git push origin --delete [branch-name]
git branch -dr [remote/branch]
(二)如果同一个文件在合并分支时都被修改了则会引起冲突
解决引起冲突办法:
-
把本地冲突文件另保存起来
-
还原本地文件版本。
-
修改冲突文件后重新提交!