Git 分布式版本控制软件
基本命令
- git init : 初始化
- git remote add origin url 关联远程仓库
- git add : 将本地文件 增加到暂存区
- git commit : 将暂存区的内容 提交到 本地仓库(本地分支,默认master分支)
- git push:将本地仓库的内容 推送到 远程仓库(远程分支)
- git pull : 将远程仓库(远程分支)的内容 拉取到 本地仓库(本地分支)
- git rm --cache 文件名 : 撤销错误添加到暂存区里的文件
安装Git https://git-scm.com/
- 安装时: Use git from git bash only..,其他默认下一步
- 配置path: E:\programs\Git\bin
配置Git
用户名和邮箱,右键-git bash
- git config --global user.name "wengzi"
- git config --global user.email "qx_leizige@163.com"
- 查看C:\Users\TL\.gitconfig
搭建git服务器(远程仓库) :统一的托管网站(https://github.com/)
为了 在本地 和远程仓库之间进行 免密钥登录,可以配置ssh
配置ssh
ssh:本地-远程
- 配置ssh:先在本地配置,发送给远程
- 现在本地生成ssh:
-
ssh-keygen -t rsa -C 157468995@qq.com 一直回车,发送给远程:将本地刚才生成的id_rsa.pub内容复制到远程的Key中
- github ---> settings --> SSH and ... ---> New SSH - title任意、key中输入 刚才在本地生成的ssh
- 测试连通性:ssh -T git@github.com
如果本地和远程成功通信,则可以在 /.ssh目录中 检查known_hosts文件
如果失败:多尝试几次 、检查回车符
Git使用
- 在本地新建git项目 ,在项目根目录 右键 - git bash - git init
- 在远程建立git项目 ,new-建立项目- 生成 https://github.com/yanqun/mygitremote.git
- 本地项目-远程项目关联 git remote add origin git@github.com:yanqun/mygitremote.git
第一次发布项目 (本地-远程)
- git add . 文件 ---> 暂存区
- git commit -m "注释内容" 暂存区-本地分支(默认master)
- git push -u origin master push 到远程分支
第一次下载项目(远程-本地)
git clone git@github.com:yanqun/mygitremote.git
更新(远程-本地)
git pull
GIt 团队合作
- github中,该项目 --setting
- 添加合作者:collaborators 加入,合作者:github用户名或邮箱
- 发送邀请链接
- 合作者:打开该链接、接受邀请、clone项目、修改、add\commit\push
GIt 分支
- 查看所有分支 : git branch -a
- 新建本地分支 : git branch 新建分支名 或者 git checkout -b 新建分支名 (git checkout命令加上-b参数表示创建并切换)
- 将本地分支推送到远程 : git push --set-upstream origin 本地分支名
- 删除本地分支 : git branch -d <BranchName>
- 删除远程分支:git push origin --delete <branchName>
GIt 分支操作
-
git branch 创建分支
-
git branch -b 创建并切换到新建的分支上
-
git checkout 切换分支
-
git branch 查看分支列表
-
git branch -v 查看所有分支的最后一次操作
-
git branch -vv 查看当前分支
-
git brabch -b 分支名 origin/分支名 创建远程分支到本地
-
git branch --merged 查看别的分支和当前分支合并过的分支
-
git branch --no-merged 查看未与当前分支合并的分支
-
git branch -d 分支名 删除本地分支
-
git branch -D 分支名 强行删除分支
-
git branch origin :分支名 删除远处仓库分支
-
git merge 分支名 合并分支到当前分支上
Git 暂存操作
-
git stash 暂存当前修改
-
git stash apply 恢复最近的一次暂存
-
git stash pop 恢复暂存并删除暂存记录
-
git stash list 查看暂存列表
-
git stash drop 暂存名(例:stash@{0}) 移除某次暂存
-
git stash clear 清除暂存
Git 回退操作
-
git reset --hard HEAD^ 回退到上一个版本
-
git reset --hard ahdhs1(commit_id) 回退到某个版本
-
git checkout -- file撤销修改的文件(如果文件加入到了暂存区,则回退到暂存区的,如果文件加入到了版本库,则还原至加入版本库之后的状态)
-
git reset HEAD file 撤回暂存区的文件修改到工作区