git学习
- Git基本命令操作
- 设置用户签名
- 初始化本地库
- 添加文件从工作区到暂存区
- 将文件从暂存区添加到本地库
- 修改文件重新提交
- Git分支
- Github操作
- 创建远程库
- 上传到远程库
- 克隆到本地文件夹
- 拉取远程库最新版本到本地
- 总结
Git基本命令操作
设置用户签名
git config --global user.name user
git config --global user.email xxx@xxx
找到配置文件可查看到设置好的用户签名,签名的作用是表明是哪个操作者提交的代码, 这里后台可以看到是user这个操作者提交的代码。
初始化本地库
git init
生成.git文件夹
ll -a # 查看本地库文件
git status # 查看本地库状态
添加文件从工作区到暂存区
git add 717test
报错
$ git add 717test/ error: ‘717test/’ does not have a commit checked out fatal: adding files failed
发现是原来在717test中git init过一次,现在需要把子文件夹中的.git文件删掉,可以了。
git rm --cached -r 717test # 删除暂存区文件夹所有文件
git rm --cached 只能用于删除暂存区中的一个文件
将文件从暂存区添加到本地库
git commit -m “日志信息” 文件名
git commit -m "first commit" 717test
git reflog # 查看版本信息
git log # 查看版本详细信息
修改文件重新提交
修改了文件内容发现会提示此次修改没有被添加到暂存区,需要重新提交一下.
重新提交时又需要先提交到暂存区接着又提交到本地库
git add 717test/README.md
git commit -m "second commit" 717test
可以看到当前指针指向的事第二个版本,版本号是8660d9a 。
指向别的分支后查看文件就是那个版本下的文件
git reset --hard 8660d9a
Git分支
git branch -v # 查看分支
git branch hot-fix # 创建分支
git checkout hot-fix # 切换分支
同一工作区下的同一文件,在不同分支下修改后,不同分支下查看的内容是不一样的
git merge hot-fix # 在master分支下合并hot-fix分支
需要注意的是,master分支和hot-fix分支下的文件不能同时修改后再合并,需要各自先修改完由工作区上传到暂存区在上传到本地库后才能合并。
Github操作
创建远程库
git remote -v # 查看当前所有远程地址别名 git remote add 别名 远程地址 # 创建别名,这样用别名替代网址,以后可以从别名进行拉取,所以现在就可以利用上面那句命令查看创建了什么别名
git remote add underwater_robot719 https://github.com/user/underwater_robot719.git
git remote remove underwater_robot719 # 删除别名
上传到远程库
git push https://github.com/user/underwater_robot719.git master
git push 别名 master
克隆到本地文件夹
git clone https://github.com/user/underwater_robot719.git
拉取远程库最新版本到本地
git pull
总结
git config --global user.name user
git config --global user.email xxx@xxx
git init
git status
git add 717test
git commit -m “first commit” 717test
git reflog
git log
git reset --hard 8660d9a
git branch -v
git branch hot-fix
git checkout hot-fix
git remote -v
git remote add underwater_robot719 项目网站.git
git push https://github.com/user/underwater_robot719.git master
git push 别名 master
==git clone https://github.com/user/underwater_robot719.git ==
每一次修改都需要将文件上传到暂存区再上传到本地库再上传到远程库(github or Gitee)