DAY00--git基本命令的认识

首先记住这些关键词:

  1. 两区,两库:工作区,暂存区,本地库,远程库
  2. git的初始化:git init,add添加,commit提交,push推送,merge 合并

add:使用了add命令就会这个文件就会交给git来管理了

git status:用来查看那状态,当然git status还能看到其他的信息,如他所在的分支,本地库有没有收到提交,git status 列出当前目录所有还没有被git管理的文件和被git管理且被修改但还未提交(git commit)的文件

设置签名:目的是区分开发人员的身份,签名跟远程库的账号密码没有关系

  1. 分仓库签名:这个仓库范围有效
  2. 用户签名:这个用户是操作系统用户,如Tony_glo(主要用这个)
  3. 优先级问题:就近原则

当前目录下有. 和..:他两意义就在于 可以cd过去,cd . 和 cd ..

git add hello.txt   从暂存区撤销文件操作 git rm --cached hello.txt  (而且他的提示也很有趣,你未追踪的时候他会提示你怎么添加到缓存区中,而你追踪了的时候则是告诉你怎样撤销)

 

提交commit就不像add那么方便啦,你每次提交都要备注一下,因为这是一个阶段性的东西,不然会退的时候分不出来,所以要标记一下要被提交的修改,git commit -m "edit by ybq"

拉个小伙伴:拉个人则是在github网站上settings的collaborators,再敲入对方的名字就可以添加了

pull request(拉请求):则是请求对方接收一下自己的代码,然后对方审核加修改后merage就行了,

有可被提交的修改,没有可被提交的修改,(即修改没有添加到暂存区)

git status有两个功能:

  1. 指出当前工作目录下还没有被git管理的文件,untracked file,直接add就行啦,
  2. 被git管理但修改了放在暂存区,但还没有被提交commit的文件

常见提示的意义:

  1. nothing to commit说明暂存区与本地库一致了,
  2. worktree clear说明没被不被git 管理的,而且修改都提交到了本地库,

也可以直接交到本地库,或者是先add 后commit,

撤销操作:工作区的文件修改了,变成新版本的文件时候,还可以撤销修改的,git checkout -- <file>,这样连工作区的修改就会被撤销,

但是如果已经添加到暂存区了,我又想撤销,那么就用 git reset HEAD hello.txt,这样又会将暂存区的新版本撤掉,但是工作区的修改不会被撤销,

git创建分支是创建指针,而切换分支也只是切换指针,HEAD,

a即 all,

merge这一块非常重要,

git与远程库的交互

远程库只能通过在github网站上新建仓库,刚开始只有提示信息,没有实际的内容,

git remote add origin https://github.com/toTony111/Hello.git 
//给远程库的地址起个别名,origin

git remote -v  //查看

git push orgin master  //一定要写本地的哪个分支

本地的master分支推送到远程的master分支,

pull=fetch+merge,第二种比较保险,

git fetch origin   或者是加上明确的分支 git fetch origin master

git merge master origin

协作而且是都在主分支上修改的话,那就很恐怖啦,两个人都是主人,都可以直接修改,

本地库修改了hello.txt,还没有提交,但是远程库又改了hello.txt,然后是本地库推送到远程,就会发生错误,然后

我就要把远程的pull下来,但是就会发生冲突啦,然后你就要决定你要怎么改,

分支也有分本地分支(master)      远程的 (origin/master)

git merge origin/master  什么时候要用斜杠,merge才要用,其他都是用空格,因为默认的master是本地的master

 

git 的操作大致明白了,

idea 使用git:(这样要要方便许多,但是你要是会用git的话,明白原理,到哪里都会用啦,)

  1. 快捷键:提交是ctrl+k,而pull是ctrl+shift+k
  2. 可以在updated info那里选中文件然后ctrl+d可以查看文件跟新前后的对比,
  3. 如果push出错(即有冲突的话)要修改冲突然后重新push,
  4. push前也可以看文件的修改前后的对比,选中文件即可

常见的冲突:

  1. 如果我工作区的项目是在github上最新的版本上进行修改的,那么我push完全没问题,他认为你已经知道详情了,你是没错的
  2. 简单的提交:是我只是进行简单的添加一些东西,没有在同一个行改动,那么我直接pull下来就行,然后再push就行了
  3. 而如果有个人在我push之前push了或者是修改了远程库,那么我push会失败,需要解决冲突merge,merge中间是结果,左边是本地版本库,而右边是远程库,你复制粘贴一下两边的东西把结果综合一下,merge,最后提交

看是谁在改动,Tony是我电脑帐户名,而toTony222则是远程库的账号名,

新增是绿色,修改是蓝色,删除是红色

相对于上一个版本我增加了什么东西,相对于上一个版本我删除了哪些东西,相对于上一个版本我改动了哪些东西,

 

小技巧

很多时候都不用眼睛去找,而是用搜索,或者是语音搜索,如windows 凭证,

vim中删除一行的快捷键:dd

注意事项

  1. 没有add过的就要先add一下,如你先从远程库的主分支里pull下来,然后冲突,然后你修改冲突文件
  2. 要先add,后commit最后然后push到远程库的主分支,直接commit不行,因为暂存区只有一个,工作区却是可以有多个
  3. 使用.ignore文件首先要下载.ignore插件,然后新建一个文件
  4. 一定要注意当前的账户是哪个,有头像的是1,没头像的是2
  5. 新建好一个工程后就要新建一个.ignore文件,然后往这个文件里添加 .idea/ 还有 out/来过滤,然后才是添加版本控制,把这个项目分享到github里面去

最后献上速查表:

 

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值