Git 是一个开源的分布式版本控制系统
工作区:working directory
版本库:repository
暂存区:stage
master是一个分支,HEAD是指向master的指针
初始化一个Git仓库:git init
添加文件:git add <file>
删除文件:git rm <file>
提交:git commit -m <message>
查看工作区的状态:git status
查看修改内容:git diff 或 git diff <file>
查看提交历史:git log (--pretty=oneline:一行)(--graph:可以看到分支合并图)
查看命令历史:git reflog
指定到哪个版本:git reset --hard commit_id (上一个版本:git reset --hard HEAD^)
丢弃暂存区的版本:git reset HEAD <file>
用版本库里的版本替换工作区的版本:git checkout -- <file>
查看分支:git branch
创建分支:git branch <name>
删除分支:git branch -d <name>
切换分支:(git checkout <name>或者)git switch <name>
创建+切换分支:(git checkout -b <name>或者)git switch -c <name>
合并某分支到当前分支:git merge <name>
GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名GitHub。
SSH Key:
$ ssh-keygen -t rsa -C "youremail@example.com"
Windows:C:Users\your-username\.ssh 里面有id_rsa(私钥)和id_rsa.pub(公钥),GitHub中添加公钥
Ubuntu:/root/.ssh 或 /home/usrname/.ssh
关联本地仓库到GitHub远程仓库:
git remote add origin(远程库的名字) git@github.com:your-github-username/your-repository-name.git
把本地库的内容推送到远程(把分支xx推送到远程):
git push -u origin master(首次)
git push origin master
git push origin dev
把远程库克隆到本地:
git clone git@github.com:your-github-username/your-repository-name.git
更新本地仓库至最新改动
git pull