git 使用方式
一、常用操作命令
1、初始化操作
git config --global user.name '<name>' # 设置提交者名称
git config --global user.email '<email>' # 设置提交者邮箱
git config --list # 查看以后配置
2、创建版本库
git clone <url> # 克隆 远程仓库
git init # 初始化本地库
3、创建删除分支
git checkout -b <branch> # 创建并切换至新的分支
git checkout -b <branch> <origin/branch> # 将远程origin/branch分支 拉到本地 branch分支,并切换到branch 分支
git checkout <branch> # 切换分支
git branch <branch> # 创建新分支
git branch -a # 查看所有分支 包括远程分支
git branch # 查看本地分支
git branch -D # 强制删除本地分支(慎用)
git branch -d # 删除本地分支
git branch -r -d <remote>/<branch> # 删除远程分支
4、创建标签
git tag #列出所有的标签
git tag <tagname> #创建新的标签
git tag -d <tagname> #删除标签
5、提交及修改
git add . # 提交所有文件至暂存区
git add <file> # 提交单个文件至暂存区
git rm -f <file> # 删除暂存区文件 和 物理文件
git rm --cached <file> # 删除暂存区文件 回到工作区
git commit -m '<注释>' # 提交至本地分支 并注释
git reset --hard HEAD^ # 撤回至上一次提交,之前的提交文件都会丢失
6、合并
git merge <branch> # 合并分支
7、远程操作
git pull <remote> <branch> # 拉取远程分支代码
git push <remote> <branch> # 提交分支代码
git push -d <remote/banch> # 删除远程分支
git push <remote> :<branch> # 删除远程分支 需配合 git branch -r -d <remote>/<branch> 一起使用
git push -tag # 提交所有 标签
8、藏存
git stash # 将当前修改存储
git stash pop # 将存储释放
9、远程地址操作
git remote -v # 查看远程仓库地址
git remote rename origin origin-old # 修改远程仓库地址origin 改为origin-old
git remote add origin [url] # 添加远程地址origin
git remote origin set-url [url] # 将origin 的远程仓库地址变更
10、修改分支,并删除远程旧分支,提交新分支
// 本地 旧分支oldbranch 改成新分支 newbranch
git branch -m oldbranch newbranch // 删除远程仓库内的旧分支oldbranch
git push --delete origin oldbranch // 提交新分支至远程仓库
git push origin newbranch
二、简单git操作
1、拉取代码(该操作只需要一次)
git clone <url>
2、拉取最新代码
git pull
3、切换新的分支
git checkout -b <branch> # 与git branch <branch> 然后 git checkout <branch> 两步操作的结果是一样的
4、合并别人的分支尽心开发(如果你的这次任务需要合并别人的分支,进行开发则进行如下操作,不需要请跳过)
git merge <remote>/<branch> # 合并 某分支代码
git add . # 将其提交至暂存区
git commit - m '已合并XXX分支代码' # 提交至自己当前分支
5、自己的任务修改完后,将代码从你自己本地的工作区提交至暂存区
git add . # 提交所有的代码至暂存区
6、撤回暂存区提交的多余的修改文件(不需要撤回请跳过)
git rm -cached <file> # 撤回暂存区提交的多余文件
7、将暂存区代码提交至当前分支
git commit -m '<注释>'
8、将当前分支提交至远程库
git push <remote>/<branch> # 如果你的分支是test 那么就 git push origin/test
9、切回master 分支,再次拉取最新代码进行下一次开发
git checkout <branch> # 切回至主分支,一般是master 分支
git pull # 拉取最新的代码
git checkout -b <branch> # 创建并切换到一个新的分支,开始下一个任务的开发 。。。。。如此循环的
三、github参与他人项目的开发
1、进入原作者的github 项目,点击frok 参与。
2、此时进入自己的github,我会发现多了一个与原作者相同的项目。
3、此时从你的这个项目中clone到你本地修改提交后。再去点击New pull request
4、此时你会看到你之前修改提交上来的内容,点击create pull request 将你的修改提交给原作者
5、原作者看到后,会自行决定,合并与否。下面的原作者的github
原作者点击pull request
原作者点击是否合并参与者的内容
原作者确定合并
6、参与人如何保持与原作者的项目更新
进入参与者自己的github项目中点击 New pull request
选择compare across forks 。反向操作。base fork改为自己的,head fork改为原作者的。
合并 拉取最新
git 使用方式的更多相关文章
- git http方式时保存密码
一直使用ssh方式,但是git@osc的ssh只能pull,不能push - -||| htts方式保存密码老是忘记,每次提交代码都要输入密码烦死了.找到文章备忘: 转自:http://git ...
- Git认证方式https和ssh的原理及比较
常见的代码托管平台GitHub.GitLab和BitBucket等,基本都会使用Git作为版本控制工具.平台一般都提供两种认证方式https和ssh.了解该过程能够更加自由的配置和使用,本文就来简单聊 ...
- 超实用 Git 使用方式介绍
都说程序员若是不知道 GitHub 就不是一个合格的程序员,其实这话说的过分了,不知道就学嘛,今天我们就来说说 Git 和 GitHub 到底是什么. 我们在开发软件的时候,常常是需要多人协作完成,这 ...
- jenkins之配置git认证方式
在使用jenkins构建时候需要从git下拉代码,需要配置认证方式 http拉取代码 配置用户名和密码认证 添加认证 设置用户名和密码 git认证 设置私钥认证
- Git上手:四种常见的Git协同工作方式
1.集中式工作流 适用人群:开发小团队(4-5人),习惯使用SVN工具的小团队. 工作方式:团队组长创建远程仓库,创建一个master分支,组员可读可写. 每个开发人员都git clone远程仓库到本 ...
- git rebase VS git merge? 更优雅的 git 合并方式值得拥有
写在前面 如果你不能很好的应用 Git,那么这里为你提供一个非常棒的 Git 在线练习工具 Git Online ,你可以更直观的看到你所使用的命令会产生什么效果 另外,你在使用 Git 合并分支时只 ...
- git reflog 和git log :no branch git 提交方式
git reflog 和git log的区别,外加git cherry-pick的一种用法 git reflog 可以查看所有分支的所有操作记录(包括(包括commit和reset的操作),包括已经被 ...
- builtroot 添加git 下载方式
1.buildroot/Config.in 配置default git server eg:config xxxx_GIT_SITE string "git site" defau ...
- Git HTTPS 方式自动保存用户名密码
一行命令搞定: git config --global credential.helper wincred 第一次输入用户名和密码提交,第二次就不需要了 参考: https://help.github ...
随机推荐
- Dropout
参数正则化方法 - Dropout 受人类繁衍后代时男女各一半基因进行组合产生下一代的启发,论文(paper.pdf)提出了Dropout. Dropout是一种在深度学习环境中应用的正规化手段.它是 ...
- trigger click 和 click 的区别??
trigger click 和 user click 有什么区别吗? 好像没有的.直到发现了这样一段代码. <button class="btn1">Button< ...
- 工作中常用的linux命令(2)
1.find :查找指定文件名的路径: 列出当前目录以及子目录中的所有文件: 在当前目录下寻找特定文件名的文件: 列出长度为零的文件: 2.ps :查看某个程序的进程,例如查询mongodb和mysq ...
- 如何修改64位Eclipse中的代码字体大小
1.双击打开Eclipse,如下图所示: 2.找到菜单栏中的Window,单击它,选择Preferences 3.在左侧的树形菜单中找到General--->Appearance--->C ...
- 利用GDI+在Winfrom绘制验证码
string yzm: private void yangzhengma() { Bitmap bt = new Bitmap(70,22);//创建位图对象 Graphics gs = Graphi ...
- java用Kruskal实现最小生成树
今天更新这篇文章超级激动,因为我会最小生成树的算法了(其实昨天就开始研究了,只是昨天参加牛客网的算法比赛,结果又被虐了,好难过~) 最小生成树的算法,其实学了数据结构就会有一定的基础,Kruskal算 ...
- 小程序for循环中通过index实现单个点击事件
<!--xml--> <view class='content3-list' wx:for="{{listItems}}" > <view class ...
- SpringBoot特性
一.SpringBoot解决的问题 1.使编码变得简单 2.使配置变得简单 3.使部署变得简单 4.使监控变得简单 二.springboot主要特性 1.遵循习惯优于配置的原则.使用springboo ...
- Project入门学习
Microsoft Office Project制定项目计划时,针对每项任务是可以分配具体的资源的,比如由某个人完成某项任务,或者把某项设备分配到某项任务,这样便于项目的管理和人员.设备的安排及有效利 ...
- 关于js的语句类型运算符等
JavaScript的基本语句有以下几种: 1.for(判断条件){执行内容}: 2.if(条件){...}else{ ....}: 3.while(条件){....}:先判断条件再执行: do{.. ...