1:下载 window git
2:设置ssh key秘钥
(1) Generating a new SSH key
在 git 命令窗口操作
ssh-keygen -t rsa -b 4096 -C your_email@example.com
(2)Adding a new SSH key to your GitHub account
clip < ~/.ssh/id_rsa.pub
此时已经复制了你的ssh key 在设置界面添加入你的账户
(3)克隆的时候出现问题百度了一堆,配置ssh,原来只需要在clone不要直接回车,直接输入yes就可以了。
3:初步了解git
创建一个文件提交到git目录下
git status //查看当前状态
git log //查看当前日志 --oneline 选项来查看历史记录的简洁的版本。
git log –autho //按照作者查看 我们还可以用 --graph 选项,查看历史中什么时候出现了分支、合并。
git add //命令可将该文件添加到缓存
git commit //提交
git push //发布到远程
git reset HEAD //可以把版本库中的文件恢复到暂存区index的状态
当执行 "git reset HEAD" 命令时,暂存区的目录树会被重写,被 master 分支指向的目录树所替换,但是工作区不受影响。
git rm --cached <file> //清除暂存区的数据
git checkout ." 或者 "git checkout -- <file>" 命令时,会用暂存区全部或指定的文件替换工作区的文件。这个操作很危险,会清除工作区中未添加到暂存区的改动。
git init 创建一个仓库该命令执行完后会在当前目录生成一个 .git 目录。使用我们指定目录作为Git仓库。
git clone 我们使用 git clone 从现有 Git 仓库中拷贝项目(类似 svn checkout)。
git clone <repo> <directory> 参数说明: repo:Git 仓库。directory:本地目录。
git rm <file> 删除工作区域的目录
git diff 此命令比较的是工作目录(Working tree)和暂存区域快照(index)之间的差异
也就是修改之后还没有暂存起来的变化内容。
git reflog 用来记录你的每一次命令:
工作区:就是你在电脑里能看到的目录。
暂存区:英文叫stage, 或index。一般存放在 ".git目录下" 下的index文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。
版本库:工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。
4:git的工作流程
一般工作流程如下:
(1)克隆 Git 资源作为工作目录。
(2)在克隆的资源上添加或修改文件。
(3)如果其他人修改了,你可以更新资源。
(4)在提交前查看修改。
(5)提交修改。
(6)在修改完成后,如果发现错误,可以撤回提交并再次修改并提交。
5:解决冲突
(1) 当下载后双方提交的时候会显示当前不是最新版本,表示修改有冲突的地方,需要合并代码进行解决问题的冲突。
hint: (e.g., 'git pull ...') before pushing again. //合并之前git pull命名
// git pull 自动合并文件然后你可以进行更改
(2) 各位同学一定要看英文的内容,先翻译一下,git pull 报错ssh错误
ssh: connect to host github.com port 22: Connection timed out
解决办法:在.ssh生成的ssh key 文件下创建config文件
添加以下内容:
Host github.com
User YourEmail@163.com
Hostname ssh.github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
Port 443
(3) 此时报的合并分支的错误
Auto-merging frist.txt
CONFLICT (content): Merge conflict in frist.txt
Automatic merge failed; fix conflicts and then commit the result.
需要我们自己调整自己提交的错误
==是用来区别发生冲突的地方
6:分支操作
创建分支命令: git branch branch1 git branch (branchname)
切换分支的命名:git checkout branch1
合并分支: git merge
切换创建分支: git checkout -b (branchname) 命令来创建新分支并立即切换到该分支下,从而在该分支中操作。
删除分支: git branch -d (branchname)
(1)创建分支
git branch branch1
git checkout branch1
git add .
git commit –m “备注”
git push
git push --set-upstream origin branch1
git checkout master //切换到主分支
git pull //更新一下当前的分支
git merge master //把当前分支合并到master分支
(2)使用branch2分支来修改同一个文件来合并分支操作
同样的操作
git pull
git push
//报冲突的错误跟上面添加冲突类似
git pull //解决定位的冲突然后合并分支
正确步骤:
1. git init //初始化仓库.
2. git add .(文件name) //添加文件到本地仓库.
3. git commit -m "first commit" //添加文件描述信息.
4. git remote add origin + 远程仓库地址 //链接远程仓库,创建主分支.
5. git pull origin master // 把本地仓库的变化连接到远程仓库主分支.
6. git push -u origin master //把本地仓库的文件推送到远程仓库.
执行命令后,git会弹出一个GitHub登陆的小界面,你登录成功后要求你输入用户名和密码。这里的密码并不是你的GitHub的密码或者本地git的密码。