一、Git安装完成之后在命令行输入
$ git config --global user.name "Your Name" $ git config --global user.email "email@example.com"
2.创建SSH key : ssh-keygen -t rsa -C "921761948@qq.com"
3.将用户主目录生成的.ssh下id_rsa.pub(公钥,id_rsa
是私钥)中内容复制,在github账户设置中添加ssh key粘贴。
二、Git命令
1、初始化:git init :把这个目录变成Git可以管理的仓库
2、Git代码提交流程:
a.从远程库获取最新代码
1)git fetch origin dev:从远程获取最新版本到本地。
2)git pull origin dev:从远程获取最新版本到本地,并与本地代码合并。
b. 将文件添加到git暂存区
git add <file_name>
c.提交
1)git commit -m '本次提交的说明' :将文件提交到git仓库
2)git commit --amend :审核不通过,合并缓存区的修改或修改最近一次commit
d. push代码到远端
git push origin HEAD:refs/for/dev
e.提交后git远程库冲突解决
#本地dev分支下 git fetch origin #从远程获取代码 git rebase origin/dev #rebase 到远程分支,命令为 git rebase origin/<remote_branch> git add <conflict_file> git rebase --continue #继续rebase git push origin HEAD:refs/for/dev
3、查看状态及历史:
git status:查看工作区的状态
git reflog:查看命令历史(可查到commit id)
git log [--pretty=oneline]:显示从最近到最远的提交日志
git diff 文件名:查看文件修改的内容
git diff HEAD -- readme.txt
可以查看工作区和版本库里面最新版本的区别
4、分支管理
a.查看分支:
1)git branch:查看所有本地分支,在当前分支标有(*)
2)git branch -a:查看所有分支
3)git branch -r:查看远程分支
4)git log --graph:查看分支合并图
b.创建+切换分支:
1)git branch 分支名 :创建分支
2)git checkout 分支名:切换分支
3)git checkout -b 分支名:创建+切换分支
c.合并分支:
1)分支内容合并到master:git merge 分支名
合并: git merge --no-ff -m "merge with no-ff" dev
d.删除分支:
git branch -d 分支名
5.回退到上一个版本
说明:git中 HEAD:表示当前版本 HEAD^:上一个版本 HEAD^^:上上一个版本 HEAD~100:上100个版本
a. git reset --hard HEAD^:回退到上一个版本
b. git reset --hard [commit id]:回退到前一个版本(命令行窗口还没有被关掉)
git checkout -- readme.txt
把readme.txt
文件在工作区的修改全部撤销。
git reset HEAD readme.txt
把暂存区的修改撤销掉(unstage),重新放回工作区.
git rm text.txt
删除一个文件
6.相关命令:
ls -ah:查看隐藏的.git目录
pwd:显示当前目录
cat 文件名:查看文件内容
7、bug分支:
a.把当前工作现场储藏:git stash
b.查看:git stash list
c.恢复并删除:
1).git stash apply
恢复,但是恢复后,stash内容并不删除,你需要用git stash drop
来删除;
2).git stash pop
,恢复的同时把stash内容也删了
三、暂存区:
工作区有一个隐藏的目录.git,其实是git的版本库,它里面最重要的是称为stage(或者叫index)的暂存区,git给我们自动创建的第一个分支是master,指向master的一个指针叫HEAD
git add:实际上就是将文件修改添加到暂存区
git commit:实际上就是把暂存区的所有内容提交到当前分支
四、.git隐藏文件说明
1、HEAD文件: ref: refs/heads/dev