首先确保你已经安装好了git
git --version —— 查看git 版本
Git基本应用
在使用git之前 我们需要明确一个概念
明确工作区和版本库的区别 工作区其实就是我们的项目文件夹 而版本库就是git在本地给我们开辟的一个临时存储数据的库 git的存储形式是面向修改的 而不是面向文件 也就是说只有git add之后的改变才会被存储
首先我们来创建出一个版本库
git init —— 初始化本地仓库
常用的Git命令
git status —— 查看修改状态(包括上传、未上传、有变化的文件)
git add (添加文件的名字) ——添加文件 '.'为全部添加
git diff (文件名) ——查看指定文件做了哪些修改
git commit ——提交到本地仓库
git log —— 查看提交历史记录(从上向下由近及远显示)
git log --pretty=oneline ——列表显示历史记录
git reset --hard HEAD^ ——回退到上一个版本
git reflog (版本号) ——回退到指定版本
git reflog ——查看命令历史
(我们可以通过历史命令找到每次上传的id
然后通过git reset --hard 找到的id到过去和未来)
git push ——从本地仓库push到远程仓库
git pull —— 从远程仓库拉取数据
git clone —— 从远程仓库拷贝数据
git remote remove origin —— 取消与本地关联的远程库
git remote add origin xxx —— 建立本地与远程库的关联
git push origin [test]:[test] // 提交本地[test]分支作为远程的[test]分支
git push --set-upstream origin [transition] // 提交本地代码到跟踪的远程分支
git commit --amend -m '' // 修改最后一次commit的描述
如何打标签(一键切换历史版本)
git tag --列出标签
git tag -a v1.0 -m "my version 1.0" --创建标签
git show v1.0 --查看标签信息
git tag -a v1.1 -m "version 1.1" 04f654b --后期打标签(某个历史提交ID)
git checkout -b version2 v2.0.0 --根据标签创建新分支
如何处理我们的误操作
git checkout -- (文件名) ——使文件回退到
最近一次git commit /git add时的状态
(慎用 会失去最近一次git add 之后的修改)
误删以后已经通过git add将文件上传到暂存区的情况下如何恢复呢
git reset HEAD (文件名) ——撤销暂存区的修改回退到工作区
然后就可以配合上一个命令来使文件恢复
git rm (文件名) ——删除文件
然后配合git commit -m ""即可
git log -g 找回之前提交的commit,并记下commit_id
git branch newbranch commit_id
切换到newbranch分支,检查文件是否存在。
Git实例步骤
(如果是从零开始 最好先建立远程仓库 然后克隆到本地)
如果本地已经有项目了,首先
cd到需要管理的文件夹
git init
git config --global user.name "作者名称"
git config --global user.emali "作者邮箱"
git add 需要添加的文件名称
git status —— 查看修改状态
git add . —— 添加所有文件
git add -u —— 添加所有文件,并将已删除的文件从库里删除
git commit 和 shift+: wq 两步走 —— 提交到仓库并做描述
git commit -m "描述内容" —— 将两步合一步
创建 .gitignore 文件 将想要忽略的文件写入
Git鼓励大量使用分支:
git branch ——查看分支
(git branch命令会列出所有分支,当前分支前面会标一个*号。)
git branch 分支名称 —— 创建分支
git checkout 分支名称 —— 切换到分支(分支不会影响主干内容)
git checkout -b <name> ——创建+切换分支 (分支上的修改不commit不会被git保存)
git checkout master —— 切换到主干
若想合并分支到主干,首先应该切换到主干
git merge 分支名称 —— 合并分支到主干
(通常合并分支的时候默认使用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息)
删除分支:git branch -d <name>
此时我们可以通过
git merge --no-ff -m "你的描述" 分支名称(这样会保留分支历史 并通过-m做出描述)
之后可通过git log查看分支历史
git log --graph --pretty=oneline --abbrev-commi
此时如果两个分支都有了新的提交 就会产生冲突
就需要我们手动解决冲突
git status会告诉我们冲突的文件
在冲突的文件中 Git用<<<<<<<,=======,>>>>>>>标记出不同分支的内容
我们手动修改后通过 git add 与git commit重新提交一下即可
推送分支
git push --set-upstream origin dev
git push origin 分支名
与GitHub远程仓库连接
git remote —— 查看是否有连接
在GitHub中登录账户
start a project
Repository name —— (如果只是想管理代码随便起,如果想发布网站 用户名+.github+.io)
新建 README.md 对文件进行描述
git add README.md
复制( push an existing repository from the command line)下的第一段代码到命令行
git remote —— 检查一下是否连接
git remote add origin https://github.com/2601178727/MyNotebook.git
复制( push an existing repository from the command line)下的第二段代码到命令行
刷新GitHub 发现代码已经存储
git push -u origin master
之后就可以通过git push 来上传到远程服务器
在公司也可以通过 git clone 加上 GitHub上仓库地址来克隆代码
关于通过GitHub发布网站
我们可以将GitHub作为服务器发布自己的作品
首先请保证创建仓库名同 用户名.github.io一致
打开GitHub客户端左上角 clone下仓库 选择本地存储位置
仓库右键 Open in Explore 打开本地文件位置
以后就可以将需要添加的文件放到本地 客户端会自动上传到远程服务器
每次发生改变 GitHub会检测并需要你对change做出描述
然后push并sync即可
浏览器访问的网址就是 用户名.github.io
GitHub服务器如何绑定自己的域名
一下以阿里云域名为例
进入控制台
域名与网站
域名
记录类型 主机记录 记录值
CNAME @/www做两条 记录值就是你的GitHub网址
之后再在GitHub本地仓库建一个CNAME文件 写入你绑定的域名www.xxx.xx
git branch --track 本地分支 origin/远程分支名