首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Git工作流协作的一些经验,分支、合并、提交推送,移除历史

版本管理在编程中的重要程度不言而喻,其中git工作流也是最主流的方式,接下来总结一下git工作流中的一些比较实用的概念具体方法。...最常规的几个命令 init, add, rm, status, diff, commit 分别用来 新建仓库、添加、删除、查看概览、比较更改,提交更改。...在git工作流中,协作的重要性是很高的,随着项目规模的升级,以及更多的人使用项目(fork),基于协作的共同维护就很有意义了。 这里主要有两个协作方式 1. 成为维护开发者 2....创建分支、提交推送 第二种方式,不仅可以用于为源仓库贡献代码,也可以作为“定制化”开发的一种可行途径。这时候如果觉得自己开发的某些代码对于源仓库也有价值,可以再考虑贡献回去。...在github中,成为协作者主要是使用invitation功能,成为维护开发者之后,就可以创建人一起管理仓库了。

54420

Git 常用命令总结

Feature分支 添加一个新功能时,你肯定希望因为一些实验性质的代码,把主分支搞乱了,所以,每添加一个新功能, 最好新建一个feature分支,在上面开发,完成后,合并, 最后,删除该feature...查看远程库信息,使用git remote -v; 本地新建的分支如果推送到远程,对其他人就是不可见的; 从本地推送分支,使用git push origin branch-name,如果推送失败,先用git...pull抓取远程的新提交; 在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地远程分支的名称最好一致; 建立本地分支远程分支的关联...Git支持多种协议,包括https,通过ssh支持的原生git协议速度最快。...master第一次推送master分支的所有内容; 此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改; 将本地的仓库远程的仓库进行关联 git

38310
您找到你想要的搜索结果了吗?
是的
没有找到

Git常用命令参考手册

# --no-single-branch 同时克隆其他所有分支 # 裸克隆, 没有工作区内容,不能进行提交修改,一般用于复制仓库 git clone --bare https://github.com...# 这一步可选,如果你真的想创建一个没有任何文件的分支 git add -A && git commit -m "提交" # 添加提交,否则分支是隐藏的 (执行这一步之前需要注意当前工作区必须保留一个文件...git pull origin master 拉取指定工作目录 # 默认情况下拉取会在当前工作目录中,如果想拉取指定工作目录,可以指定 `-C` git -C /opt/work pull 移动-重命名...commit,默认 r, reword 保留当前commit,编辑提交消息 e, edit 保留当前commit,停止修改 s, squash 保留当前commit,融入上一次提交 b, break...git subtree 劣势: 命令过于复杂, 推送拉取都很麻烦 虽然用于替代子模块, 使用率并没有子模块广泛 子仓库主仓库混合在一起, 历史记录相当于有2个仓库的记录 git subtree 命令用法

1.2K60

Git常用命令参考手册

克隆, 克隆深度为1, 只克隆指定分支且历史记录只保留最后一条, 通常用于减少克隆时间项目大小 git clone --depth=1 https://github.com/xjh22222228...# --no-single-branch 同时克隆其他所有分支 # 裸克隆, 没有工作区内容,不能进行提交修改,一般用于复制仓库 git clone --bare https://github.com...# 这一步可选,如果你真的想创建一个没有任何文件的分支 git add -A && git commit -m "提交" # 添加提交,否则分支是隐藏的 (执行这一步之前需要注意当前工作区必须保留一个文件...origin master:master # 如果某个远程分支拉取并合并到当前分支后面可以省略 git pull origin master 拉取指定工作目录 # 默认情况下拉取会在当前工作目录中,如果想拉取指定工作目录...r, reword 保留当前commit,编辑提交消息 e, edit 保留当前commit,停止修改 s, squash 保留当前commit,融入上一次提交 b, break 在这里停止(稍后使用

2.3K30

Git使用教程(看完会了也懂了)

暂存区主要作用如下: 分离工作提交: 通过将工作区中的更改添加到暂存区,可以选择性地将一部分更改提交到本地仓库,而不是一次性提交所有更改。这样可以帮助进行更精细的代码管理版本控制。...通过使用git push命令,您可以将本地仓库中的更改推送至远程仓库,以便与他人共享和协作。 add:将工作区中的更改添加到本地暂存区。...--soft:仅移动HEAD指针当前分支引用,更改索引工作目录。这允许你撤销最近的提交并重新提交。 --mixed(默认选项):移动HEAD指针当前分支引用,并将索引重置为指定的提交。...但是,更改工作目录。这样可以撤销提交并保留更改的副本供进一步修改。 --hard:彻底移动HEAD指针、当前分支引用索引,并重置工作目录为指定的提交。这将丢弃所有未提交的更改。...总结: git reset --soft:保留修改暂存区的文件,可重新提交git reset --mixed:保留修改取消暂存,需要重新添加提交文件。

34720

初学Git及简单搭建git服务器客户端

别的用户在将更新push上来的时候容易出现冲突。...没有添加的文件也可以直接提交到版本库,也可以选择不提交添加的文件 ?...在服务器仓库下执行git log可以看到你推送的文件,因为服务器上是裸仓库,所以没有工作目录,看不到推送的文件 拉取文件获取文件 拉取获取的区别 拉取:git pull 在将远程仓库最新版本拉到本地的同时...远端建立好后,就可以将本地克隆到的仓库推送到服务器上了 在本地仓库做一些修改,记住要先在本地进行提交,然后再推送到服务器上 TortoiseGit—>推送 就可以了,由于服务器上是裸仓库,所以没有工作区...,看不到文件,git log一下就可以看到你刚才修改文件的提交记录了 基础命令 我是在linux上操作的,算是本地仓库吧,涉及远程库;在linux上操作与在windows上相同 把文件添加到版本库中

2.3K21

SourceTree使用技巧

克隆 点击克隆按钮,克隆项目: 既可以是本地已有的git项目,也可以是远程目录中的项目, ? 本地存在的git项目, 获取项目克隆地址,点击克隆按钮,如图所示: ?...不妨把它看成一个跛脚的 Git,在实际使用中推荐这样使用GIT。...基本步骤 提交、拉取推送 提交: 项目提交是为了维护本地版本库,如果本地有未提交的内容,则不允许拉取推送;如图所示区域有内容时,则代表本地未提交的内容: ?...GIT跟SVN一样有自己的集中式版本库或服务器。GIT更倾向于被使用于分布式模式,也就是每个开发人员从中心版本库/服务器上chect out代码后会在自己的机器上克隆一个自己的版本库。...完全不需担心妨碍其他工作成员。只要我不合并及提交到主要版本库,没有一个工作成员会被影响。等到我不需要这个分支时, 我只要把它从我的本地版本库删除即可。无痛无痒。

3.4K10

GitGitHub小册

如果你有多个文件或者需要对整个目录进行了修改或者有提交的需求,可以使用 git add .命令全部提交到暂存区。当我们修改了工作区,git add命令是将这些修改添加到暂存区,暂存区记录的只是修改。...建议使用 -m 传输来提交本次提交的备注信息。 关于这个命令,还有一个 -a参数,是将未提交到暂存区的修改(也就是工作区)一并提交到版本区,一般建议使用。...# 推送命令 git push 后面不需要任何选项参数,此命令会把本地仓库 master 分支上的新增提交推送到远程仓库的同名分支上,因为当前所在的分支就是 master,而且上文提到,它已经跟踪了远程仓库的同名分支...以上就是使用git命令完成的一次修改-提交-推送的操作,主要用到了下面几个命令: # 查看状态 git status # 添加到暂存区 git add # 提交到版本区 git commit -m...git commit --amend --only -m '提交备注信息' 如果说,你以及push了本次提交,那么一种方式是修改提交内容之后强推,也就是在推送是加上 -f参数,一般建议这样做。

41320

每个 Tester 都应该知道的 Git 命令

Git 初始化 初始化代码仓库 创建一个空的 Git 仓库或者重新初始化一个已存在的 git init 克隆代码仓库 将 foo 仓库克隆到一个名为 foo 的新目录中: git clone https...要完全删除提交并删除所有更改,请使用: git reset --hard HEAD~1 合并提交 假设您有4个提交您还没有向仓库推送任何内容,并且您希望将所有内容放入一个提交中,那么您可以使用: git...Git 推送提交更改后,下一步是推送到远程仓库。...如果您需要使存储库保持最新,正在处理可能会在更新文件时损坏的内容,这一点尤其有用。 要将提交集成到主分支中,可以使用merge。...重新基础将一个分支的更改重新写入另一个分支,而创建新的提交

1.6K20

Git 学习笔记

工作版本库的区别.png ---- 2.2.4 撤销修改 场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file。...场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。...第一次推送master分支的所有内容; 此后,每次本地提交后,只要有必要,就可以使用命令```git push origin master``推送最新修改; ---- 3.2 从远程库克隆 上次我们讲了先有本地库...小结 要克隆一个仓库,首先必须知道仓库的地址,然后使用git clone命令克隆Git支持多种协议,包括https,通过ssh支持的原生git协议速度最快。...小结 查看远程库信息,使用git remote -v; 本地新建的分支如果推送到远程,对其他人就是不可见的; 从本地推送分支,使用git push origin branch-name,如果推送失败,

42970

写在2018第一天:编程之路始于Git

git是分布式版本控制系统,与之对应的是集中式版本控制。分布式集中式最大的不同,分布式并不是提取最新版本的文件快照,而是把代码仓库完整的克隆下来。每一次克隆操作都是对代码仓库的完整备份。...Index:暂存区域,存放的是一个文件,保存了下次将要提交的文件列表信息。 Repository:本地仓库。 Remote:远程仓库,是Git用来保存项目的元数据对象数据的地方。...添加指定目录到暂存区: git add 添加当前目录下的所有文件: git add . 4.git rm 删除工作区文件,且将这次删除放入暂存区 git rm ......停止跟踪指定文件,该文件会保留在工作git rm --cached 5.git commit 提交暂存区的文件到本地仓库 git commit -m“commit log” 提交暂存区的指定文件到本地仓库...重置暂存区的指定文件,与上一次commit保持一致,工作区不变 git reset 重置暂存区与工作区,与上一次commit保持一致 git reset --hard 12.git tag 列出所有tag

1K50

Git 工作流程

source=cloudtencent 我们既然知道了要利用 git 工具进行将本地代码提交到线上仓库,以及通过线上仓库同步代码到本地,表面上大家可能认为只有两个步骤,不就是上传同步嘛?...下面将会详细介绍一下 Git 完整的工作流程。 指导 一样的教学方式,先不讲解代码,先讲思路。...基础案例 首先需要克隆项目,将线上仓库的项目拷贝一份副本到我们的电脑上(假设小明李白都已经克隆好了)。 刚开始创建的项目是空的,这个要注意了。...此时文件还在暂存区,所以下一步的操作就是把暂存区的文件提交到本地仓库中,可能有同学问为什么直接把文件更新到线上仓库上。还要多此一举呢?...Git 代码提交工作流程 添加文件到暂存区 添加暂存区文件到本地仓库 获取远端仓库对比本地仓库是否有冲突 如果没有冲突,则将本地仓库的文件推送到远端仓库上 如果有冲突,则处理完冲突后,重复步骤 2、3、

40130

Git开发教程 四 —— Git远程库交互】

如何将本地库推送到远程库 创建好远程库后,我们重新创建一个本地库来进行测试(仓库名为TestGitHub): 本地仓库名不用非得远程仓库名一致,为了区分,通常都设置为同一个名字。...,这时候我们可以使用指令git add .来将当前目录下的所有文件添加到暂存区,注意add.之间有一个空格。...如何将远程库克隆到本地 学会了如何键本地库推送到远程库,我们还需要掌握如何将远程库克隆下来,重新创建一个文件夹,作为另外一个工作区(名字为TestGitHub_2): 此时我们在该文件夹下启动Git终端...将文件添加到暂存区: git add test.txt 然后提交git commit -m "解决程序员B因推送产生的冲突" 这里还是注意千万别加文件名。...克隆下来以后,我们在程序员C的工作区创建一个pay.txt文件: 然后提交该操作: 提交完成后推送到远程库,执行指令: git push origin master 此时刷新程序员C

72410

Git全栈开发者使用指南

基本的Git工作流程如下: 在工作目录修改文件 暂存文件,将文件快照放入暂存区 提交更新,找到暂存区的文件,将快照永久性存储到到 Git 仓库区(本地) 将本地仓库的变更推送到远程仓库 以上几个区域的关系可以用下图表示...Untracked: 未跟踪, 此文件在文件夹中, 并没有加入到git库, 参与版本控制. 通过git add 状态变为Staged....1、克隆项目 可以通过在工作区使用git init来初始化一个Git仓库,通常开发中我们不会这样做,因为实际的项目大部分已经进行了部分开发,并进行了版本管理,所以我们首先做的是从远程仓库克隆项目。...点击克隆下载,可以看到项目的路径, HTTPS是凭据式的路径,使用此路径,向远程仓库推送代码的时候需要凭据(账号密码); 这种方式向远程仓库提交,会要求账号密码,输入完成之后,Win10操作系统可以选择记住凭据...HEAD为指定commit,同时重置暂存区工作区,与指定commit一致 $ git reset --hard [commit] # 重置当前HEAD为指定commit,保持暂存区工作区不变 $

78030

轻松掌握Git开发(五)远程库的基本操作

如何将本地库推送到远程库 创建好远程库后,我们重新创建一个本地库来进行测试(仓库名为TestGitHub): ? 本地仓库名不用非得远程仓库名一致,为了区分,通常都设置为同一个名字。...这里有一个地方前面忘了说了,顺便提一提,当工作区的文件特别多的时候,采用git add [文件名]的方式显然太麻烦了,这时候我们可以使用指令git add .来将当前目录下的所有文件添加到暂存区,注意add...如何将远程库克隆到本地 学会了如何键本地库推送到远程库,我们还需要掌握如何将远程库克隆下来,重新创建一个文件夹,作为另外一个工作区(名字为TestGitHub_2): 此时我们在该文件夹下启动Git终端...接下来的操作就一样了,将文件添加到暂存区: git add test.txt 然后提交git commit -m "解决程序员B因推送产生的冲突" 这里还是注意千万别加文件名。...克隆下来以后,我们在程序员C的工作区创建一个pay.txt文件: ? 然后提交该操作: ?

81610

Git使用教程:最详细、最傻瓜、最浅显、真正手把手教!

GitHub虽然有些许改版,并无大碍。 一、Git是什么? Git是目前世界上最先进的分布式版本控制系统。 工作原理 / 流程: ?...如果上面一样,没有任何提示,说明已经添加成功了。 第二步:用命令 git commit告诉Git,把文件提交到仓库。 ?...知道了对readme.txt文件做了什么修改后,我们可以放心的提交到仓库了,提交修改提交文件是一样的2步(第一步是git add 第二步是:git commit)。 如下: ? 2....八、多人协作 当你从远程库克隆时候,实际上Git自动把本地的master分支远程的master分支对应起来了,并且远程库的默认名称是origin。...现在我们可以模拟另外一个同事,可以在另一台电脑上(注意要把SSH key添加到github上)或者同一台电脑上另外一个目录克隆,新建一个目录名字叫testgit2 但是我首先要把dev分支也要推送到远程去

54910

Git使用教程:最详细、最傻瓜、最浅显、真正手把手教!

GitHub虽然有些许改版,并无大碍。 一、Git是什么? Git是目前世界上最先进的分布式版本控制系统。 工作原理 / 流程: ?...如果上面一样,没有任何提示,说明已经添加成功了。 第二步:用命令 git commit告诉Git,把文件提交到仓库。 ?...知道了对readme.txt文件做了什么修改后,我们可以放心的提交到仓库了,提交修改提交文件是一样的2步(第一步是git add 第二步是:git commit)。 如下: ? 2....八、多人协作 当你从远程库克隆时候,实际上Git自动把本地的master分支远程的master分支对应起来了,并且远程库的默认名称是origin。...现在我们可以模拟另外一个同事,可以在另一台电脑上(注意要把SSH key添加到github上)或者同一台电脑上另外一个目录克隆,新建一个目录名字叫testgit2 但是我首先要把dev分支也要推送到远程去

31.1K103

超详细的 Git 实战教程,傻瓜一看也会!

GitHub虽然有些许改版,并无大碍。 一、Git是什么? Git是目前世界上最先进的分布式版本控制系统。 工作原理 / 流程: ?...如果上面一样,没有任何提示,说明已经添加成功了。 第二步:用命令 git commit告诉Git,把文件提交到仓库。 ?...知道了对readme.txt文件做了什么修改后,我们可以放心的提交到仓库了,提交修改提交文件是一样的2步(第一步是git add 第二步是:git commit)。 如下: ? 2....八、多人协作 当你从远程库克隆时候,实际上Git自动把本地的master分支远程的master分支对应起来了,并且远程库的默认名称是origin。...现在我们可以模拟另外一个同事,可以在另一台电脑上(注意要把SSH key添加到github上)或者同一台电脑上另外一个目录克隆,新建一个目录名字叫testgit2 但是我首先要把dev分支也要推送到远程去

1.2K40

Git详解之必知点

2.Git下载安装 2.1Git的安装 Git最新版 2.28.0详细安装步骤及细节--让你安装迷茫 (附加经验) 2.2TortoiseGit的安装 TortoiseGit最新版2.10.0.2详细安装步骤及细节...--让你安装迷茫 (附加经验) 3.Git操作入门 3.1Git基本工作流程 本地仓库 3.2Git命令行操作 git常用命令 命令 作用 git init 初始化,创建 git 仓库...git status 查看 git 状态 (文件是否进行了添加提交操作) git add 文件名 添加,将指定文件添加到暂存区 git commit -m '提交信息' 提交,将暂存区文件提交到历史仓库...添加提交,查看日志 3.3 3.3Git图形化工具操作 创建工作目录、初始化本地 git 仓库 新建一个 test.txt 文件(暂不执行添加操作) 选中文件右键,选择TortoiseGit...先有远程仓库,本地为空 步骤 将远程仓库的代码,克隆到本地仓库 克隆命令:git clone 仓库地址 创建新文件,添加提交到本地仓库 推送至远程仓库 项目拉取更新 拉取命令:git pull 远程仓库名

37600

Git使用教程:最详细、最傻瓜、最浅显、真正手把手教!

GitHub虽然有些许改版,并无大碍。 一、Git是什么? Git是目前世界上最先进的分布式版本控制系统。 工作原理 / 流程: ?...如果上面一样,没有任何提示,说明已经添加成功了。 第二步:用命令 git commit告诉Git,把文件提交到仓库。 ?...知道了对readme.txt文件做了什么修改后,我们可以放心的提交到仓库了,提交修改提交文件是一样的2步(第一步是git add 第二步是:git commit)。 如下: ? 2....八、多人协作 当你从远程库克隆时候,实际上Git自动把本地的master分支远程的master分支对应起来了,并且远程库的默认名称是origin。...现在我们可以模拟另外一个同事,可以在另一台电脑上(注意要把SSH key添加到github上)或者同一台电脑上另外一个目录克隆,新建一个目录名字叫testgit2 但是我首先要把dev分支也要推送到远程去

1K20

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券