安装Git
Ubuntu或Debian系统安装Git
$ sudo apt install git
创建版本库
mkdir learngit
cd learngit
git init
添加文件到仓库中
- 先创建一个readme.txt文件
- 输入命令:
git add readme.txt
,可反复多次使用,添加多个文件 - 输入命令:
git commit -m <message>
,message为本次提交的说明
工作区与暂存区
git add
操作:
git commit
操作:
常用命令
命令 | 描述 |
---|---|
git status | 查看当前仓库状态,可以看到哪些文件被修改了 |
git diff <file> | 查看修改内容 |
git log [--pretty=oneline] | 查看提交历史[简洁查看] |
git reset --hard commit_id | 回到某一个历史提交点 |
git reflog | 查看每一次提交,包括回退之前的提交点,以便可以回到未来 |
git checkout -- <file> | 撤销工作区的修改 |
git reset HEAD <file> | 撤销暂存区的修改 |
git rm <file> | 删除工作区的文件,当然也可以使用上面的git checkout -- <file> 撤销删除恢复文件 |
远程仓库github
创建ssh key
在用户目录下运行终端输入:
ssh-keygen -t rsa -C "youremail@example.com"
home目录下会多出id_rsa
私钥和id_rsa.pub
公钥两个文件.
登陆GitHub,打开“Account settings”,“SSH Keys”页面:
然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容.
点“Add Key”,你就应该看到已经添加的Key.
在GitHub创建一个仓库后,在本地仓库运行以下命令关联远程仓库:
git remote add origin git@github.com:xxx/xxx.git
使用以下命令推送本地仓库内容到远程库上:
git push -u origin master
# 第一次push使用-u参数会把本地master和远程master关联起来,以后就不需要带-u参数
克隆一个远程仓库到本地:
git clone git@github.com:xxx/xxx.git
分支
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>
查看分支合并图:git log --graph
多人协作
git checkout -b branch-name origin/branch-name
: 创建一个与远程分支关联的本地分支
或者git branch --set-upstream branch-name origin/branch-name
: 关联本地分支和远程分支git push origin <branch-name>
: 推送修改到指定的分支- 如果推送失败,则因为远程分支比本地的新,需要先
git pull
拉取合并,并解决冲突 - 然后再使用第二步的
git push