git总结

xiaoxiao2021-02-27  282

参考: http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 (廖雪峰老师写的非常好,去看吧!)

http://blog.csdn.net/u013492736/article/details/46852611

git是一个分布式的版本控制系统。

git config --global user.name 'Your Name' git config --global user.email 'email@example.com' git init % 把当前目录变成Git可以管理的仓库 git add <file> % 把文件添加到仓库 git commit -m <info> % 把文件提交到仓库 git status % 查看仓库当前的状态 git diff % 查看修改的内容 git log % 显示从最近到最远的提交日志 git reset --hard HEAD^ % 回退到上一个版本 git reset --hard <id> % 回退到版本号为id的版本 git reflog % 记录了每一次命令 git checkout -- <file> % 丢弃工作区的改动 git reset HEAD <file> % 取消暂存 git rm <file> 从暂存区删除文件file

查看分支:git branch

创建分支:git branch <name>

切换分支:git checkout <name>

创建+切换分支:git checkout -b <name>

合并某分支到当前分支:git merge <name>

删除分支:git branch -d <name>

首先明白两个概念:工作区(Working Directory)和版本库(Repository) 工作区:就是在电脑上可以看到的目录; 版本库:工作区中的隐藏目录.git。

Git的版本库中存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD,HEAD表示当前版本。 上一个版本是HEAD,上上一个版本就是HEAD^,往上n个版本就是HEAD~n。

把文件往Git版本库里添加的时候,是分两步执行的: 第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区; 第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。

github是git的一个服务器。

创建自己的公钥:

ssh-keygen -t rsa -C "your_email@youremail.com"

push an existing repository from the command line 先有本地库,后有远程库,用下面的命令进行关联:

git remote add origin https://github.com/zhouna/gitDir.git git push -u origin master

推送最新修改:

git push origin master

注意:如果设置了免密码登陆,但push时仍然要求输入密码,原因可能是使用了https方式push。修改.git/config文件,将url改为git。

从远程库克隆一个本地库:

git clone git@github.com:<username>/<projectName>.git

每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支。HEAD指向当前分支。在Git里,master分支是主分支。

为什么需要分支? 因为代码要经常提交,以免丢失,但是如果一时开发不完,你提交的会影响到别人。这是,就需要创建分支,你在自己的分支上开发,提交,等你完全开发完一个功能后,再合并回去。

首先,我们创建dev分支,然后切换到dev分支:

$ git checkout -b dev Switched to a new branch 'dev'

git check命令加上-b参数表示创建并切换,相当于一下两条命令:

$ git branch dev $ git checkout dev Switched to branch 'dev'

然后,用git branch命令查看当前分支:

$ git branch * dev master

对dev分支的工作完成后,我们就可以切换回master分支:

$ git checkout master Switched to branch 'master'

现在,我们把dev分支的工作成果合并到master分支上:

$ git merge dev

合并完成后,就可以删除dev分支了:

$ git branch -d dev

Git鼓励你使用分支完成某个任务,合并后再删掉分支,这和直接在master分支上工作效果是一样的,但过程更安全。

转载请注明原文地址: https://www.6miu.com/read-9371.html

最新回复(0)