导学
git是分布式版本控制工具,主要用于管理开发过程中的源代码文件。
git功能:代码回溯,版本切换,多人协作,远程备份
git仓库:
1.本地仓库:开发人员电脑上的git仓库
2.远程仓库:服务器上的git仓库
三大指令概念:
1.Commit:提交,将本地文件和版本信息保存在本地仓库
2.Push:推送,将本地仓库的文件和版本信息上传到远程仓库
3.Pull:拉取,将远程仓库文件和版本信息下载到本地仓库
Git GUI Here:打开git图形界面
Git Bash Here:打开git命令行
常见的git代码托管服务:github,gitlab,码云
git常用命令
安装git之后首先要做的是设置用户名称和email地址。
执行下列命令:
1. 设置用户信息: 2. 3. git config --global user.name "shangyi" 4. 5. Git config --grobal user.email "7734@qq.com" 6. 7. 查看配置信息: 8. 9. git config --list 10. 11. 12. 13. 注意: 14. 上面设置的user.name和user.emile并不是我们在git平台上设置的用户名和密码 15. 此处可以任意设置
创建git仓库有两种方式:
1. 1.本地初始化一个git仓库 2. 3. 2.从远程仓库克隆
在本地初始化git仓库步骤:
1. 1.在任意目录下创建一个空目录 2. 3. 2.进入到这个目录中打开git bash 4. 5. 3.输入git init
从远程仓库克隆:
命令形式:git clone [远程仓库地址]
工作区,暂存区,版本库的概念:
1. 版本库:.git隐藏文件夹就是版本库,版本库中存储了许多配置信息,日志信息和文件版本信息等 2. 3. 工作区:包含.git文件夹的目录就是工作区,也称为工作目录,主要用于存放开发的代码 4. 5. 暂存区:.git文件夹中有很多文件,其中有一个index文件就是暂存区,也叫做stage。 6. 暂存区是一个临时保存修改文件的地方 7. 8. 关系:工作区添加选择的改变(git add)到暂存区,暂存区提交改变(git commit)到版本库
git工作区中文件的状态:
1. untracked未跟踪(未纳入版本控制) 2. 3. track已跟踪(纳入了版本控制) 4. 5. 1.Unmodified 未改变状态 6. 7. 2.Modified 已修改状态 8. 9. 3.Staged 已暂存状态
注意:这些文件的状态会随着执行的git命令而改变
本地仓库常用命令:
1. git status 查看文件状态 2. 3. git add 将文件修改加入暂存区 4. 5. git reset 将暂存区文件取消暂存 6. 7. git reset --hard 版本号 将暂存区切换到指定版本 8. 9. git commit -m"备注信息" 将暂存区文件修改提交到版本库 10. 11. git log 查看日志
远程仓库常用命令:
1. git remote 查看远程仓库 2. 3. git add 添加远程仓库 4. 5. git clone 从远程仓库克隆 6. 7. git pull 从远程仓库拉取 8. 9. git push 推送到远程仓库
添加远程仓库:
1. git remote add <shortname><url> 添加一个新的远程git仓库,同时指定一个可以应用的简写 2. 3. 克隆远程仓库: 4. 5. git clone [url] 6. 7. 推送到远程仓库: 8. 9. git push [remote-name][brnch-name] 10. 11. 从远程仓库拉取: 12. 13. git pull [remote-name][brnch-name] 14. 15. 16. 注意: 17. 18. 如果是本地建立仓库,且仓库中存在文件,此时再从远程仓库拉取文件会报错 19. 解决方案是在git pull命令后加入参数 --allow-unrelated-history
分支操作
使用分支可以把你的工作从开发主线上分离出来,以免影响开发主线。
同一个仓库可以有多个分支,各个分支相互独立,互不干扰。
通过git init命令创建本地仓库会默认创建一个master分支
具体命令:
1. git branch 查看本地分支 2. 3. git branch -r 查看远程分支 4. 5. git branch -a 查看本地和远程分支 6. 7. git branch [name] 创建分支 8. 9. git checkout [name] 切换分支 10. 11. git push [shortName] [name] 推送至远程仓库分支 12. 13. eg : git push origin master -f 强制推送到远程master分支 14. 15. git merge [name] 合并分支
标签操作
git中的标签指的是某个分支某个时间点的状态。通过标签,可以很方便的切换到标记时的状态。
具体命令:
1. git tag 列出所有标签 2. 3. git tag [name] 创建标签 4. 5. git push [shortName] [name] 将标签推送到远程仓库 6. 7. git checkout -b [branch] [name] 检出标签