一、网摘
引用博客:
https://www.cnblogs.com/smuxiaolei/p/7484678.html
https://blog.csdn.net/qq_45305211/article/details/99539574
工作区:就是你在电脑上看到的目录,比如目录下testgit里的文件(.git隐藏目录版本库除外)。或者以后需要再新建的目录文件等等都属于工作区范畴。可以理解成项目所在的目录。
版本库(Repository):工作区有一个隐藏目录.git,这个不属于工作区,这是版本库。其中版本库里面存了很多东西,其中最重要的就是stage(暂存区),add就是添加到暂存区,还有Git为我们自动创建了第一个分支master,以及指向master的一个指针HEAD。
二、使用
打开git bash,先指定用户名和email。
这是用来标识用户的,如果不事先指定好,无法提交到本地仓库。
git config --global user.name "cui" #用户
git config --global user.email "cjoda1218@gmail.com" #邮箱
git config --global user.name #查看用户
git config --global user.email #查看邮箱
git config --global --unset user.name #退出用户
git config --global --unset user.email #退出邮箱
cat ~/.gitconfig #查看用户/email
建立本地仓库,向暂存区添加文件后,提交到本地仓库。
git init # 建立一个空的repository,.git文件夹,默认隐藏
git add filename #提交文件到暂存区
git add * #将所有文件提交到暂存区
git commit -m "message" #将工作区下的所有提交到repo
git status #查看状态
git add 后再查看状态:
git commit 后查看状态:
版本回退:每提交一次,就有一个新的版本。
git diff filename #比较工作区文件和仓库文件差异
git log #查看提交记录
git log --pretty=oneline #查看提交记录
git reflog #查看commit_id
git tag [tag_name] [commit_id] -m [message] #创建标签
git reset --hard HEAD^ #回退到上一版本
git reset --hard HEAD^^ #回退到上两个版本
git reset --hard HEAD~3 #回退到上三个版本
修改之后,添加(add)到暂存区之前,想要撤销之前的修改:
git checkout -- filename #添加到暂存区之前撤销修改
# 此命令似乎是类似“撤销”
创建/切换/合并分支:
git branch #查看分支
git branch branch_name #创建分支
git checkout branch_name #切换分支
git checkout -b [branch_name] #创建并切换到
git merge branch_name #合并branch_name分支到当前分支
git branch –d name #删除分支
上述,假设在分支dev上开发后,想要与master分支合并,需要先将dev分支上的内容add和commit,然后在合并分支。
分支部分的内容稍稍复杂,还是看上面贴出的两个博客吧。
推送到远程仓库:
git remote add origin https://github.com/Ivorybeach/testgit.git #连接远程仓库
git push -u origin master #上传到远程仓库,需要输入github用户名/密码
git remote #查看远程仓库信息
git remote -v #远程仓库详细信息
从远程仓库克隆:
https://github.com/Ivorybeach/testgit.git #克隆