2 . gitignore 打开Android Studio创建一个项目,在项目目录下存在一个.gitignore文件,它是Git的忽略配置文件,在里面配置不需要进行版本控制的文件或目录,Git不会跟踪这些文件或目录的变化...安装这个插件之后,就可以选择我们想要忽略的文件或者目录,点击右键,在弹出的菜单选项中选择“Add to .gitignore file”,就能在.gitignore文件中增加一行忽略配置。 3 ....提交和推送 下载安装完Git之后,可以检查一下在Android Studio中的Git路径配置是否正确。...Git路径配置正确后,就可以单击Android Studio菜单栏VCS→Enable Version Control Integration,在弹出的对话框中,选择Git。...当我们再次修改代码进行提交时,就不用上述这么麻烦了,可以直接单击工具栏中的提交按钮,完成第二次提交和推送即可。提交和推送对应Git命令为:git commit和git push。 4 .
答:使用版本控制系统通常还意味着自动帮我记录每次文件的改动,还可以让同事协作编辑,就算你胡来搞砸了整个项目,把文件改的改,删的删,你也可以轻松恢复到原先的样子。...文件 描述:有些时候,你必须把某些文件放到Git工作目录中,但又不能提交它们,比如保存了数据库密码的配置文件啦等等,每次git status都会显示Untracked files,有强迫症的童鞋心里肯定不爽...在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件;.gitignore文件本身要放到版本库里,并且可以对.gitignore做版本管理...在一个Git库中可以有多个gitattributes文件,不同gitattributes文件中,属性设置的优先级(从高到低) 同一个gitattributes文件中,按照行的先后顺序,如果一个文件的某个属性被多次设置...我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令
一、git安装后-指定名称和邮箱 $ git config --global user.name "Your Name" $ git config --global user.email "email@..." //提交 (也可以一次性提交多个文件) *注意:必须在当前版本库和当前目录下 四、版本控制 $ git log //查看提交历史记录,从最近到最远,可以看到3次 $ git log --pretty...commit -m "remove test.txt" //删错了,恢复 $ git checkout -- test.txt 六、远程仓库 $ ssh-keygen -t rsa -C "youremail...$ git stash list //查看储存的工作现场 //恢复和删除 $ git stash apply $ git stash drop //恢复并删除 $ git stash pop $...排除所有.class文件: *.class # 不排除.gitignore和App.class: !.
合并分支:在开发新功能或修复错误后,需要将分支合并到主分支上,使用 git merge 命令将分支合并到主分支上。 拉取代码:在多人协作开发中,需要将远程仓库中的代码拉取到本地进行开发。...四、Git状态的变化 在Git中,有三个主要的概念:工作区、暂存区和仓库。它们分别代表了不同的状态,可以通过Git命令进行变化。...; 撤销工作区的修改:git checkout --,此命令可以将工作区的文件恢复到上次提交的状态; 恢复仓库中的文件:git checkout,此命令可以将指定提交中的文件恢复到当前分支上。....gitignore 文件可以放置在代码仓库的任何级别上,从仓库根目录到任意子目录都可以。一般建议将其放置在代码仓库的根目录下,以便更方便地管理和维护。...需要注意的是,如果在 .gitignore 文件中忽略了某个文件或目录,那么 Git 将不会对其进行版本控制,也不会将其包含在提交中,因此需要确保 .gitignore 文件中的规则正确地列出了需要忽略的文件或目录
支付功能虽然没有开发完成,但是在另一条分支上,所以产品上线和功能开发完全不受影响。这才是分布式开发的高效模式。 在 git 中,工作目录下面的所有文件都不外乎这两种状态:已跟踪或未跟踪。...已跟踪的文件是指本来就被纳入版本控制管理的文件,在上次快照中有它们的记录,工作一段时间后,它们的状态可能是未更新,已修改或者已放入暂存区。而所有其他文件都属于未跟踪文件。...它们既没有上次更新时的快照,也不在当前的暂存区域。初次克隆某个仓库时,工作目录中的所有文件都属于已跟踪文件,且状态为未修改。...文件在工作区的修改全部撤销,这里有两种情况: 一种是 demo.html 自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态; 一种是 demo.html 已经添加到暂存区后,又作了修改...的同学注意了,如果你在资源管理器里新建一个 .gitignore 文件,它会提示你必须输入文件名,但是在文本编辑器里“保存”或者“另存为”就可以把文件保存为 .gitignore 了。
检查 Git 存储库的状态,包括添加的未暂存的文件和暂存的文件: git status 要暂存修改后的文件,请使用该 add命令,您可以在提交前多次运行该命令。...my_script.py 承诺 暂存更新后,您就可以提交它们,这将记录您对存储库所做的更改。...stash@{0} 如果您保存了多个 stash 并且不再需要使用它们中的任何一个,则可以使用 clear删除它们: git stash clear 忽略文件 如果您想将文件保留在本地 Git 目录中...,但不想将它们提交到项目中,则可以将这些文件添加到您的 .gitignore文件中,以免它们引起冲突。...使用文本编辑器(例如 nano)将文件添加到 .gitignore文件中: nano .gitignore 复制 要查看 .gitignore文件示例,您可以查看 GitHub 的.gitignore
如果直接执行 rm file3 ,此时,工作区和版本库就不⼀致了,要删⽂件,目前除了要删⼯作区的⽂件,还要清除版本库的文件。...⼀般⾛到这⾥,有两种可能: 确实要从版本库中删除该文件 不小心删错了 对第⼆种情况,很明显误删,需要使⽤ git 来进行恢复,很简单,我们刚学过(删除也是修改):git checkout -- file3...即可; 对于第⼀种情况,很明显是没有删完,我们只删除了⼯作区的⽂件。...向远程仓库推送 本地已经 clone 成功远程仓库后,我们便可以向仓库中提交内容,例如新增一些文件后提交上去: 到这里我们已经将内容提交至本地仓库中,如何将本地仓库的内容推送至远程仓库呢,需要使用 git...无论哪种方式,最终都可以得到⼀个完整的 .gitignore 文件,例如我们想忽略以 .so 和 .ini 结尾所有⽂件, .gitignore 的内容如下: *.ini *.so 在 .gitignore
比方说你在自己电脑上改了文件 A,你的同事也在他的电脑上改了文件 A,这时,你们俩之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。...feature 分支开发结束后,必须合并回 develop 分支,合并完分支后一般会删点这个 feature 分支,但是我们也可以保留。...在 Linux/Mac 系统中, ssh-keygen 随 SSH 软件包提供;在 Windows 上,该程序包含于 MSysGit 软件包中。...Git 提供了 .gitattributes 配置文件,它允许使用者指定由 git 使用的文件和路径的属性。 在 Git 库中,一个普通文本文件的行尾默认是 LF 。...你可以在推送开始之前,用它验证对引用的更新操作(一个非零的退出码将终止推送过程)。
在.gitignore内部,您可以通过提到特定文件或文件夹的名称或模式,告诉Git只忽略单个文件或文件夹。您还可以使用相同的方法告诉Git忽略多个文件或文件夹。...通常,.gitignore文件被放置在存储库的根目录中。根目录也称为父目录和当前工作目录。根文件夹包含组成项目的所有文件和其他文件夹。也就是说,您可以将它放在存储库中的任何文件夹中。...出于安全原因,您可能不希望提交它们,或者因为它们对您来说是本地的,因此对于与您从事同一项目的其他开发人员来说是不必要的。 以下这些内容可能会包含在文件中: 操作系统文件。...这是一个用于保存和跟踪本地安装的每个包的依赖项的文件夹。 包含敏感数据和个人信息的文件。...它们提供关于操作系统的使用活动和错误的信息,以及操作系统中发生的事件的历史记录。 如果您只想忽略一个特定的文件,则需要提供从项目根目录到该文件的完整路径。
可以在解决失败的挑选或恢复中的冲突后继续使用。 --quit 忘记当前正在进行的操作。在樱桃挑选或恢复失败后,可用于清除顺序器状态。 --abort 取消操作并返回到预序列状态。...pack 已压缩到一个文件中的一组对象(以节省空间或有效传输它们)。 pack index 包中对象的标识符列表和其他信息,以帮助有效地访问包的内容。...这取代了 _ 更新后 _ 钩子,除了它们的名称之外,它还获得了所有引用的旧值和新值。 标准输出和标准错误输出都转发到另一端的git send-pack,因此您只需为用户输入echo消息即可。..._ 更新后 _ 挂钩可以判断推送的磁头是什么,但是它不知道它们的原始值和更新值是什么,因此它是一个糟糕的做旧日志的地方。 _ 接收后 _ 钩子确实获得了 refs 的原始值和更新值。...这使得其他人可以使用该标签来跟踪您的项目。推送还可以触发更新后挂钩以执行与发布相关的项目,例如构建发布 tar 包和预格式化文档页面。 同样,对于维护版本, maint 正在跟踪要释放的提交。
图 12-4:Git 仓库中文件的可能状态以及它们之间的转换 在创建存储库后的任何步骤,运行git status来查看存储库的当前状态及其文件的状态。在 Git 中工作时,您会经常运行这个命令。...在本章中,我建议通过使用git commit –am命令在一个步骤中转移和提交修改的文件来避免这种情况。这样,它们将直接从修改状态转移到干净状态。...当提交文件夹中的文件时,Git 会自动将文件夹包含在仓库中,但是您不能提交空文件夹。...您将使用的确切命令取决于工作副本中文件的状态。 请记住,版本控制系统只添加信息。即使您从仓库中删除了一个文件,Git 也会记住它,以便您可以在以后恢复它。...但是我决定将文件恢复到添加bacon()之前的状态,而不改变仓库中的任何其他文件。我可以使用git show : 命令显示特定提交后的文件。
(注意:本地仓库和远程仓库可以不同名,本文只是为了写教程设置为相同名称。) ? 我们再刷新下Github Code界面,发现新加入的README.md文件已经推送到了远程仓库中。 ?...这个时候,Git知道你删除了文件,因此,工作区和版本库就不一致了,git status命令会立刻告诉你哪些文件被删除了: $ git status On branch master Changes not...另一种情况是删错了,因为版本库里还有呢,所以可以很轻松地把误删的文件恢复到最新版本: $ git checkout -- test.txt git checkout其实是用版本库里的版本替换工作区的版本...总之,就是在Git中,分支完全可以在本地自己藏着玩,是否推送,视你的心情而定! 抓取分支 多人协作时,大家都会往master和dev分支上推送各自的修改。...使用Windows的朋友注意了,如果你在资源管理器里新建一个.gitignore文件,它会非常弱智地提示你必须输入文件名,但是在文本编辑器里“保存”或者“另存为”就可以把文件保存为.gitignore了
诸如公共类的公共方法,我和别人同时修改同一个文件,他提交后我再提交就会报冲突的错误。...索引区和工作空间不变更;可以通过git reset –mixed HEAD^n恢复当前分支的版本库和索引区至上一次提交的状态,工作区不变更;可以通过git reset –hard HEAD^n恢复当前分支的版本库...使用过git merge和git rebase吗?它们之间有什么区别? 简单的说,git merge和git rebase都是合并分支的命令。...能说一下git系统中HEAD、工作树和索引之间的区别吗?...首先利用命令touch .gitignore新建文件 $ touch .gitignore 然后往文件中添加需要忽略哪些文件夹下的什么类型的文件 $ vim .gitignore $ cat .gitignore
,如果要想工作区的修改也丢弃,就执行第12条命令即可; 14.删除文件 $ rm 然后提交即可; 如果不小心删错了,如果还没有提交的话使用下面命令即可恢复删除,注意的是它只能恢复最近版本提交的修改...不可以在 master 分支拉取其他分支下来,这样会把远程的其他分支拉取下来和本地master分支合并!!!引起不必要的麻烦!...; 忽略与自己相关开发环境相关的配置文件; … 使用:在Git工作区的根目录下创建一个特殊的 .gitignore 文件,然后把要忽略的文件名或者相关规则填进去,Git就会自动忽略这些文件,不知道怎么写的可参考...:https://github.com/github/gitignore,这里提供了一些忽略的规则,可供参考; 如果你想添加一个被 .gitignore 忽略的文件到Git中,但发现是添加不了的,所以我们可以使用强制添加...如果你已经将一些文件提交到远程库中了,然后你想忽略掉此文件,然后在 .gitignore 文件中添加忽略,然而你会发现并没有生效,因为Git添加忽略时只有对没有跟踪的文件才生效,也就是说你没有add过和提交过的文件才生效
; 1、Git工作模式 操作 90%以上的操作在个人计算机上 添加文件、修改文件、提交变更、查看版本历史等 版本库同步 将本地修改推送到版本服务器 版本控制系统: 2、Git文件存储 注意文件存储和SVN...2、git rm 和rm的区别 git rm : 1、删除了一个文件 2、将被删除的文件纳入到了暂存区(stage);(可以直接调用git commit来提交) 若想恢复被删除的文件,需要进行两个动作:...提交到暂存区; 使用技巧: 可以通过git commit --amend -m '修正内容'更改上次错误的提交消息。...查看git命令帮助: 5、.gitignore文件 在开发中,如果我们不想将所有的文件都放到git当中,而是要忽略少数一些文件(比如jar包、配置文件等),我们可以在我们的目录创建一个.gitignore...此时我们可以创建一个.gitignore文件: 简而言之,放在.gitignore中的文件会直接被git无视。 其中,放在.gitignore中的文件也支持正则表达式。
Git项目文件说明 Git init后主要有两个重要的文件和目录:.git目录和.gitignore 1. .gitignore .gitignore文件存在于根目录(与.git同级的目录)用于在将文件提交到...但你会发现这个列表里有些值在文件夹中并不存在,因为除了 loost objects 它还汇总了 pack 文件中的内容。...hotfix分支进行bug修复,修复完成后,再次切回到dev分支,从堆栈中恢复刚刚保存的内容。...由于疏忽,本应该在dev分支开发的内容,却在master上进行了开发,需要重新切回到dev分支上进行开发,可以用git stash将内容保存至堆栈中,切回到dev分支后,再次恢复内容即可。...6.移除文件的版本控制 还没有git add,在 .gitignore中添加 已经git add,先 git rm -r --cached 文件,然后在 .gitignore中添加 已经加到版本控制中,
提交后,用git diff HEAD -- readme.txt命令可以查看工作区和版本库里面最新版本的区别: 出错修改 场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git...这个时候,Git知道你删除了文件,因此,工作区和版本库就不一致了,git status命令会立刻告诉你哪些文件被删除了: 现在你有两个选择: 一是确实要从版本库中删除该文件,那就用命令git rm删掉...,并且git commit: $ git rm test.txt $ git commit -m "remove test.txt" 另一种情况是删错了,因为版本库里还有呢,所以可以很轻松地把误删的文件恢复到最新版本...推送成功后,可以立刻在GitHub页面中看到远程库的内容已经和本地一模一样: 从现在起,只要本地作了提交,就可以通过命令: $ git push origin master 把本地master分支的最新修改推送至...至此,下载完毕 git忽略上传的文件 在项目中新建.gitignore文件 然后就写规则来操作要忽略的文件了。.
; 1、Git工作模式 操作 90%以上的操作在个人计算机上 添加文件、修改文件、提交变更、查看版本历史等 版本库同步 将本地修改推送到版本服务器 版本控制系统: ?...这些从 Git 仓库的压缩数据库中提取出来的文件,放在磁盘上供你使用或修改。 暂存区域是一个文件,保存了下次将提交的文件列表信息,一般在 Git 仓库目录中。...2、git rm 和rm的区别 git rm : 1、删除了一个文件 2、将被删除的文件纳入到了暂存区(stage);(可以直接调用git commit来提交) 若想恢复被删除的文件,需要进行两个动作:...5、.gitignore文件 在开发中,如果我们不想将所有的文件都放到git当中,而是要忽略少数一些文件(比如jar包、配置文件等),我们可以在我们的目录创建一个.gitignore文件,git就不会将这些文件放入暂存区...此时我们可以创建一个.gitignore文件: ? 简而言之,放在.gitignore中的文件会直接被git无视。 其中,放在.gitignore中的文件也支持正则表达式。
这时候处理方法有两种: 选择1: 确实要从版本库中删除该文件,使用git rm +文件名 然后commit, 文件就从版本库中删除了 选择2: 其实是删错了。...因为版本库中还有,可以将误删文件恢复到最新版本, 但是最近一次提交之后修改的内容丢失了。...3.创建标签都会只存储到本地,不会自动推送到远程,所以打错的标签可以在本地安全删除 八.使用GItHub 1.在GitHub上,可以任意的Fork开源仓库,相当于是拷贝到自己远程仓库中 2.我们拥有的...Fork后仓库的读写权限 3.可以推送pull request给官方仓库来贡献代码 九.自定义Git 1.忽略特殊文件 在我们使用Git的时候,有时候某些文件不得不放在git目录下,但是它们又不能被提交...这时候需要用到忽略文件。 原理:编辑.gitignore文件,将其放在版本库里并提交到Git。.gitignore文件中记录需要忽略提交的文件类型。
领取专属 10元无门槛券
手把手带您无忧上云