Git 从零开始
NO.1 安装之后的配置
git config --global user.name "Your name"
git config --global user.email "Your Email"
NO.2 创建版本库 初始化
进入目标目录
git init //初始化一个仓库
添加文件分两步:
git add <filename> //添加文件
git commit //提交
NO.3 仓库当前的状态
git status
查看文件修改的内容
git diff <filename>
workingTree 工作目录..git能知道工作目录里的所有改变
index add命令把workingtree 提交给index
commit 最终提交给仓库
git diff <filename> 查看工作目录和Index的区别
git diff --cached <filename> 查看Index和commit的区别
git diff HEAD <filename> 查看worktree和commit的区别
NO.4 查看提交的历史纪录 以决定回退到哪个版本
git log
git log --pretty=oneline //一行显示
回退版本
git reset --hard HEAD^ //上个版本
git reset --hard HEAD^^ //上上个版本 以此类推
git reset --hard HEAD~100 //往上100个版本
git reset --hard <版本号> //回退到版本号
git reflog 查看命令历史纪录 确定回到'未来'的哪个版本
NO.5 撤销修改
①当未add到暂存区时
git checkout -- <filename> 撤销工作区修改 从版本库恢复
②当已经add到暂存区时
git reset HEAD <filename> 从暂存区恢复 到工作区
然后checkout
③当已经commit到版本库时
回退版本
NO.6 删除文件
git rm 从工作目录删除
git commit 提交到版本库
撤销删除
没有commit时:
回退版本 git reset HEAD --HelloWorld.py
git checkout -- HelloWorld.py
已经commit:
整个版本库回退 git reset -- hard HEAD^
NO.7远程仓库
创建SSH key
ssh-keygen -t rsa -C "youremail@example.com"
用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件
登陆GitHub,打开“Account settings”,“SSH Keys”页面,
然后,点“Add SSH Key”,填上任意Title,
在Key文本框里粘贴id_rsa.pub文件的内容
要关联一个远程库,使用命令:
git remote add origin git@server-name:path/repo-name.git;
关联后,使用命令
git push -u origin master
第一次推送master分支的所有内容;
此后,每次本地提交后,只要有必要,就可以使用命令
git push origin master
推送最新修改;
从远程库克隆
git clone git@github.com:<username>/<repo-name>.git
NO.8 分支管理
Git鼓励大量使用分支:
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>