1. git 配置:
git config --global user.name "xxx" //配置用户名
git config --global user.email "xxx" //配置邮箱
2.配置 sshkey
1. 创建本地 ssh : ssh-keygen -t rsa -C "码云的注册邮箱"
2. 在码云 中添加这个 sshkey :
复制 C:\Users\cheng\.ssh\id_rsa.pub 文件中的内容;
在码云--》修改资料--》SSH公钥--》粘贴
3. 验证: ssh -T git@github.com
接着按yes
3.建立仓库 repository
1.git init //-- 创建本地仓库
2.git remote add origin git@github.com:用户名/仓库名.git //-- 把本地仓库和远程仓库关联起来,
如果不执行这个命令的话,每次 push 的时候都需要指定远程服务器的地址
4.从远程仓库中下载新的改动
1.git pull origin master
5.提交本地修改到远程仓库中
git add
git add -A -- 将改动添加到本地仓库中
git rm xxx -- 从本地仓库中删除指定文件
git rm -r xxx -- 从本地仓库中删除指定文件夹
git commit -m "注释" -- 把本机缓存中的内容提交到本机的 HEAD 里面
git push origin master -- 把本地的 commit push 到远程仓库中
git clone SSH地址或HTTPS地址 --吧项目从远程仓库中克隆到本地
6、总结git一般的add添加的步骤 就是添加指定需要哪一个文件上传到我们远程的仓库,
简单的说你就是想上传哪一个功能
第一步:一般是需要初始化一个文件夹里面的内容,git init
第二步:就是需要把远程的仓库的东西下载下来后,
2.git remote add origin git@github.com:用户名/仓库名.git
//-- 把本地仓库和远程仓库关联起来, 如果不执行这个命令的话,
每次 push 的时候都需要指定远程服务器的地址
3、从远程仓库中下载新的改动
1.git pull origin master
4、 这一步就是你想添加哪一个文件上传远程仓库的语句
$ git add 加上是文件的指定的名字还有后缀的。
例如:$ git add git的简单步骤.txt
5、 git commit -m "注释" -- 把本机缓存中的内容提交到本机的 HEAD 里面
这里只是要告诉团队你添加了什么进去这个仓库,所以要解释一下是什么来着。
6、 git push origin master -- 把本地的 commit push 到远程仓库中
这里要告诉我们要把本地的仓库同步整一个内容到远程仓库里面。
----------------------------------------------------------------------------
7、 要随时掌握工作区的状态,使用git status命令。
如果git status告诉你有文件被修改过,用git diff可以查看修改内容
-Git is a version control system. git前面的减号是代表原来的
+Git is a distributed version control system. git前面是加号代码有其他单词加家来所以要注意
接下来我们就把修改后的文件再一次上传到仓库。一样需要两步的操作
这一步就是你想添加哪一个文件上传远程仓库的语句
第一步: $ git add 加上是文件的指定的名字还有后缀的。
例如:$ git add git的简单步骤.txt
第二步 git commit -m "注释" -- 把本机缓存中的内容提交到本机的 HEAD 里面
这里只是要告诉团队你添加了什么进去这个仓库,所以要解释一下是什么来着。
第三步:我们再用git status命令看看仓库的当前状态
Git告诉我们当前没有需要提交的修改,而且,如果括号里面出现
工作目录是干净(working directory clean)的。
=========================================================================================
8、 版本回退 意思就是我们提交了好多个修改的文本的意思
版本控制系统肯定有某个命令可以告诉我们历史记录,在Git中,我们用git log命令查看:
就是告诉我们在一个记事本里面修改了多少次的代码,还有我们提交commit多少次,
都是显示我们级注解指示出来那些东西。
感觉如果嫌输出信息太多,看得眼花缭乱的,可以试试加上--pretty=oneline参数
git log --pretty=oneline
这个只是简单的看出来前面的一大串的字符串的是commit id(版本号) 后面的中文就是注解
感觉一般是从上往下看的都是第一个是最新的版本,最后的最旧的
094f710f83a60d75990ae54566fd64c1ec3a4672 修改后的文件添加了一个distributed
dccc49261fbd0bc35fd5d6924e5198cc6624c1bc 演示git
90628f5906a51b8c11c7741df97aee172c5c6cd0 git的add步骤
c416057f1a31f3c0d5ff30b2359d1404cacfa6be test
912a2642a0e6d4587e2f3a6e4464a1f82036e40a Initial commit
现在我们就开始查看哪一个版本的历史到底是什么来着了
在Git中,用HEAD表示当前版本,
上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,
所以写成HEAD~100。
总结:
我们一般是按照三步走
第一步就是为了查看我们提交修改这个版本多少次了
$ git log --pretty=oneline
第二步我们是想查看哪一个版本,主要是看那个注解帅选的
$ git reset --hard HEAD^
还有最后一步就是查看这个版本里面的内容是什么是不是与注解的说的一样的意思
$ cat 加上你刚才的文本的名字加后缀
$ cat readme.txt
最后还有一个非常强大的命令就是令git reflog用来记录你的每一次命令
这个记录着你以前提交过的 前面第一个一大字符串就是commit的ID来着
=================================================================================================
9、
所以,git add命令实际上就是把要提交的所有修改放到暂存区(Stage),
然后,执行git commit就可以一次性把暂存区的所有修改提交到分支。
git diff #是工作区(work dict)和暂存区(stage)的比较
git diff --cached #是暂存区(stage)和分支(master)的比较
==========================================================
10、撤销修改
一般先用$ git status查看情况
第一种情况:下面的一条就是把工作区与那个暂存区,进行撤销而已,
意思是你在你的工作区增删改查了,后来还没有添加到暂存区,可以利用下面的语句撤销
Git会告诉你,git checkout -- file可以丢弃工作区的修改
git checkout -- 记得是空格后再加上什么文件被修改
例子$ git checkout -- readme.txt
第二种情况:我们就是不小心add添加到了暂存区,我们该怎么样撤销我们不小心犯错误的的东西
所以就是利用下面的语句
这个就是我们需要把那个暂存区还没有提交commit到那个板库里面,
我们才可以进行对修改撤销我们的一些没有必要的操作
Git同样告诉我们,用命令git reset HEAD file可以把暂存区的修改撤销掉(unstage),重新放回工作区:
多了一步$ git reset HEAD readme.txt
我们对这样的情况下可以这样的操作
第一步我们需要git status 查看情况
第二步;用命令git reset HEAD file可以把暂存区的修改撤销掉(unstage)
git reset命令既可以回退版本,也可以把暂存区的修改回退到工作区。当我们用HEAD时,表示最新的版本。
第三步:这一步是最重要的一步,
因为我们每一个操作都是需要经历过的才算撤销成功$ git checkout -- 加文件名字与类型
$ git checkout -- readme.txt
===================================================================================
11、删除的步骤
第一步:先添加一个文件
$ git add test.txt
第二步:一般情况下,你通常直接在文件管理器中把没用的文件删了,或者用rm命令删了
$ rm 加文件的名字与类型
$ rm test.txt
第三步:$ git status 查看当前的情况
现在你有两个选择,一是确实要从版本库中删除该文件,那就用命令git rm删掉,并且git commit:
$ git rm test.txt
$ git commit -m "remove test.txt"
记得以后commit到我们的版仓库里面后都是需要执行push推送哪一步
$ git push
$ ls 是代表这个仓库里面有多少当前的目录。他会列出来
git的add步骤.txt
README.md
readme1.txt
=======================================================================================================
12、创建与合并的分支的知识点
1、git checkout命令加上-b参数表示创建并切换,相当于以下两条命令
$ git branch dev 这个也就是却换git branch命令会列出所有分支,当前分支前面会标一个*号。
branch是分支的意思
$ git checkout dev
一、$ git checkout -b dev 这个就是利用创建一个分支
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name> 这个就是只需要记住的语句
二、 接下来就是利用我们的 $ git branch 就是查看所有的分支 还有就是当前分支前面会标一个*号。
查看分支:git branch
三、现在,dev分支的工作完成,我们就可以切换回master分支
语句就是$ git checkout master checkout也就是切换的意思
四、git merge命令用于合并指定分支到当前分支。
合并后,再查看readme.txt的内容,就可以看到,和dev分支的最新提交是完全一样的。
注意到上面的Fast-forward信息,Git告诉我们,这次合并是“快进模式”,
也就是直接把master指向dev的当前提交,所以合并速度非常快。
合并某分支到当前分支:git merge <name> <name>这个就是我们的分支的名字来着
五、$ git branch -d dev 这个就是删除我们那个Dev的语句 $ git branch -d 加上你的分支
最后我们还有需要时刻需要打这一条语句看剩下
查看分支:git branch
六、总结:
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
如果出现冲突这一步是最重要的一步
还一到时候子啊提交,
用带参数的git log也可以看到分支的合并情况
$ git log --graph --pretty=oneline --abbrev-commit
接下来就是删除的语句
删除分支:git branch -d <name>
分支管理的方法策略
一、创建分支
$ git checkout -b dev 然后就是修改我们的代码文件
二、然后在却换回来我们的主分支
$ git checkout master
三、准备合并dev分支,请注意--no-ff参数,表示禁用Fast forward:
$ git merge --no-ff -m "merge with no-ff" dev
四、合并后,我们用git log看看分支历史:
$ git log --graph --pretty=oneline --abbrev-commit