注意本篇博客只是罗列的一些命令,不适合初学者
git 本地
配置用户(如果不配置用户那么无法提交代码)
git config --list 用于查看配置的属性
配置姓名和邮箱
git config --global user.name "你的名字"
git config --global user.email "邮箱"
初始化git
- 一个项目只能初始化一次 不能嵌套初始化
git init 告诉git那些文件夹给git管理
将文件从工作区添加到暂存区
git add . 将当前文件夹所有的文件 全部提交到暂存区
将文件从暂存区添加到历史区
每次提交都会产生一个版本ID
git commit -m "消息" 将当前文件夹里面的东西 提交到历史区 ""里面的东西必须加上
将文件从工作区提交到历史区
git commit -a -m "消息" 该方法仅限于文件曾今提交过
git 常用命令
git status 查看当前文件在那个工作状态 红色表示工作区 绿色表示暂存区 无色表示历史区
git log 查看文件提交提交日志 主要是看版本ID
git reflog 查看文件提交的所有日志 因为假如你在历史区回滚了,那么git log也回到回滚的时刻,那么日志会丢失,git reflog命令则不会
git branch 查看git分支
git diff
有三种比较情况
- 工作区diff暂存区
git diff
- 暂存区diff历史区
git diff --cached
- 工作区diff历史区
git diff master
git回滚
-
暂存区到工作区的回滚
git checkout 文件名
-
暂存区到上一个暂存区记录的回滚
我们通过这个指令可以回滚暂存区到前一个状态 然后在通过git checkout
命令来实现文件git add .
之后的回滚
git reset Head 文件名
-
历史区通过下面命令回滚可以将该版本号的历史回滚 覆盖当前的工作区和暂存区
git reset --hard 版本号
git reset --hard Head^
git 分支
- 创建一个分支
git branch 分支名
- 切换分支
git checkout 分支名
- 删除分支
git branch -D 分支名
删除分支时,当前用户不能在要删除的分支上面 - 创建并且切换分支
git checkout -b 分支名
- 在一个新的分支上面修改了代码,不能切换直接切换分支 我们需要
commit
或者git stash
保存缓冲区里面 当我们从和其他缓冲区里面切换回来时,调用git stash pop
指令可以将原先在缓冲区里面的代码复原 这个基本不会用 写代码一般不会切换分支 - 分支合并
git merge 分支名
当merge遇到问题时 那么我们需要根据提示打开对应的文件 把冲突处理掉 然后在此提交
linux命令
- pwd命令 用于打印当前的工作目录
- rm -rf 文件夹名 删除文件夹 如果为*那么就会删除整个
- rm 文件 删除文件
- mkdir 文件夹名 创建文件夹
- touch 文件 创建一个文件
- cd 文件路径 进入文件路径的文件
- ls 显示当前文件夹里面的所有文件 不显示隐藏文件 .开头文件为隐藏文件
- ls -al 显示隐藏文件
- cat 文件 查看文件
- vi 文件名 进入文件 进行修改 i:进入插入模式 esc退出编辑模式 :q! 强制退出 :wq 保存退出
- mv 文件夹名 路径 将文件夹移到路径
git远程
- git init操作
- 新建一个README.md文件
- 新建一个.gitignore 文件把不需要上传的文件夹 写入路径
- 对于空文件夹那么我们需要在里面建一个.gitkeep文件 因为空文件夹不会上传
- 然后
git add .
git commit -m ""
上传到本地 - 在github/gitlib上面新建一个厂库
- 关联远程厂库
git remote add origin 路径
删除关联git remote rm 名字
- 推送代码
git push -u origin master(分支名称)
当线上代码即github上面的代码和本地保存的代码不一致时 那么我们在此push代码时就会报错,我们需要按照提示先git pull origin master
然后合并之后 在一起提交 - 拉去最新的代码
git pull
设置gh-pages分支
- 我们可以在项目里面建一个gh-pages分支 github为了我们提供了一个线上环境 可以通过线上环境来浏览我们的静态页面
如何修改别人的代码
fork
别人的代码 将别人的代码变成自己的- 然后
git clone 地址 项目别名
将代码下载下来 默认就是git厂库,而且有origin地址 - 修改代码
- 然后提交这整个项目
git add .
git commit -m ""
git push -u origin master
- 然后点击new pull request 向原作者提交代码
- 等待原作者同意
注意我们不能直接操作原作者代码,因为权限不够,所有我们需要fork
当然假如我们作为原作者,我们可以为厂库添加贡献者,那么贡献者就不需要fork你的代码,可以直接修改你的代码