一天学完git(2)——命令篇
Git命令——仓库操作
git -v 查看版本号(或者git --version)
git init 在当前目录下初始化为仓库
git clone https://gitee.com/cugfle/testforgitee.git 克隆远程仓库
git clone https://gitee.com/cugfle/testforgitee.git remote-gitee-rep 将clone下来的仓库命名为remote-gitee-rep
git config user.name 查看用户名 git config user.email 查看邮箱 git config user.name Huskie 设置用户名 git config user.email 1647120792@qq.com 设置邮箱
设置全局config
Git命令——文件操作
git status 查看暂存区状态
创建a.txt文件并修改内容为“aaaa”后,再次使用 git status 命令
git add 将文件从工作区添加至暂存区 git2.40版本这里会提示git rm --cached 直接从暂存区移除指定文件
git restore --staged a.txt 将暂存区文件移动到工作区(逻辑上的概念)
git *.txt 将所有工作区的.txt文件都放入暂存区
git commit -m 新增文件 //使用commit命令将暂存区存入本地仓库,并且附加提交信息“新增文件”
git log // 查看提交日志
在文件夹中直接删除a.txt文件,然后查看 git status
和创建或修改操作一样,先add,再commit(我这里操作失误了,导致git add a.txt后有个fatal,正常是无显式反应)
文件误删除可以使用restore命令
git restore a.txt
若文件删除后,并且add、commit成功提交后,如何进行文件恢复?
直接用restore恢复会发现无法匹配文件
解决方法一:使用log查看上一版本,并且使用reset进行恢复(会丢失记录)
git log --oneline 查看日志(以一行进行显示)
git reset --hard 35581d2 重置该记录
使用reset后会丢失该提交记录之后的提交记录!!(即提交的dddd这一个)
解决方法二:使用log查看上一版本,并且使用revert进行还原(不会丢失记录)
Git命令——分支操作(分支是基于提交操作的,如果没有任何提交无法创建分支)
切换分支一(先branch创建,再checkout切换)
切换分支二( git checkout -b order)
git checkout -b order(-b代表branch创建分支)
删除分支
git branch -d user // -d代表delete删除
合并和冲突
首先分别切换在两个分支下都创建c.txt文件,然后放入不同内容,一个放“cccc”,一个放“3333”,但是提交信息都为“cccc”
合并时需要先切换至合并的主分支(一般为master分支)
然后再用merge命令合并
在master分支下打开c.txt文件内容如图所示:
直接打开txt并修改为下图:
执行add和commit
合并完成(状态转换)
Git命令——标签操作(用标签提醒使用者此次操作的类型,并且可以代替版本号操作文件或创建分支等)
先创建a.txt文件,再修改a.txt文件,再创建b.txt文件
使用tag命令,给操作码对应的记录设置标签
git tag uptfile 8f4039741d5f9e106a9172c42a9a320e12c5e946 将操作码为8f4039741d5f9e106a9172c42a9a320e12c5e946的标签设置为uptfile
git tag -d uptfile // 删除标签
使用tag创建分支
git checkout -b uptfile // 使用tag代替版本号创建分支,因为分支是基于提交操作的
Git命令——远程仓库(remote命令)
一、使用HTTPS方式:
先创建b.txt文件,再添加内容“bbbb”,使用add、commit提交到本地库。
git push origin // 将本地库的修改推送到远程库
二、使用SSH方式:(gitee中有教程)(默认存放在c盘用户下的.ssh文件夹下)
使用此命令生成ssh密钥,并一直按回车。
打开c盘用户下的.ssh文件夹下的.pub文件(公钥),用记事本打开复制其中内容
在gitee中的 “安全设置” 下的 “SSH公钥” 中输入复制的内容
再次执行git push origin命令即可成功推送!
使用以下命令拉取远程仓库修改后的文件
git pull origin