Git与源码仓库2、3_嘘嘘喵

嘘嘘喵 社区会员 2021-10-11 21:27:15

目录

 

10.9

学习内容

git命令

git log 

git status

git remote -v

git rebase

java

关于方法、变量、类的寿命

工作内容

10.11

工作内容

一、本地创建分支并上传

二、本地创建分支并合并

三、编辑master分支下的内容并上传

四、解决冲突

五、多位小组成员共同编辑同一个文件

1、创建2个文件夹,java1和java2。

2、init初始化

3、创建本地分支

4、远程仓库中已经创建好用于测试的文件。

5、在java1中进行编辑

6、在java2中进行编辑、提交、上传

7、冲突解决

六、保持本地仓库不变,删除并重建同名远程仓库,然后再提交本地修改。

 

java任务

C1任务

C1任务30-1

C1任务30-2

C1任务31-1

C1任务31-2

学习内容

git指令

git branch -d <分支名>

git switch <分支名>

git tag

git tag

java

静态、非静态方法中调用变量

明日计划


10.9

学习内容

git命令

git log 

查看历史提交记录。

git status

查看仓库当前的状态,并且显示有改动的文件。

git remote -v

查看远程仓库详细信息,可以看到仓库名称。

git rebase

也是合并分支的一种方式。

rebase操作可以把本地未push的分叉提交历史整理成直线。

rebase的目的是使得我们在查看历史提交的变化时更容易,因为分叉的提交需要三方对比。

java

关于方法、变量、类的寿命

  1. 在方法中声明的变量从其声明开始到方法结束一直存在(可见)。
  2. 在代码块中声明的变量在代码块结束之前一直存在。
  3. 方法的参数在方法返回前一直存在。
  4. 对象中的变量在包含它们的对象的整个生命周期中都存在。它们的可见性也可以由特殊访问修饰符控制。
  5. static(类)变量在程序运行的整个过程中都存在。它们的可见性也可以由访问修饰符定义。
  6. 如果变量被声明为 static,即标记有关键字 static,则它在类存在期间一直存在。

工作内容

今天主要在上传文件、更改、提交中徘徊,遇到了各种报错,进度缓慢,主要有以下几类。

1:clone指令执行失败。在这里卡了好久,最后发现是域名输错了,codechina后面是.net,我输的.com.cn。改过之后仍然不行,又卡了好久,发现是后面少了几个数字,加上之后立马解决了这个问题。

2、fatal: 'origin' does not appear to be a git repository
fatal: Could not read from remote repository.

使用 git remote -v 指令查看仓库信息,没有任何反应。

使用git remote add origin https://codechina.csdn.net/xuxumiao204/java指令添加远程仓库,再使用remote -v查看,可以看到仓库状态如下:

3、用push指令上传时报错。

 分析可能是因为文件不一样。用pull指令下载后再push,仍然不行,暂时放弃,明天再继续。

 

10.11

工作内容

一、本地创建分支并上传

如果本地创建分支后直接上传,会操作失败,并出现如下提示:

按照提示,输入指令

git push --set-upstream origin TestBranch

代码的含义大概是设置本地分支追踪远程仓库的特定分支。 

上传至远程仓库成功:

二、本地创建分支并合并

1、先创建一个test.txt文档,添加初始化内容。

2、先创建一个test分支,并切换到该分支。

git branch test
git checkout test

3、创建一个文档test.txt,并添加一些文字,再将其添加并提交。

git add test.txt
git commit -m "添加了第二次编辑的内容"

4、切换回master分支

git checkout master
ls

发现test.txt文件并不存在。因为刚刚的改动全是在test分支中完成的,master分支中并无任何改动。

4、合并test分支。

git merge test

5、因为第一、二次提交时,master分支并未添加test.txt文档,因此再编辑一次以作测试。

步骤(详细步骤略):切换到分支test→编辑test文档如下(1)→切换回master分支→查看test文档(2)→执行合并操作→查看test文档(3)

三次test文档内容如图:

图略。因为自己忘记用add和commit指令,因此这次操作的结果与预期不符,在debug的过程中忘记截图了。大概就是master分支和test分支都停留在了第三次编辑后的内容。

6、进行第四次编辑。

步骤(详细步骤略):切换到分支test→编辑test文档如下(1)→add,commit→切换回master分支→查看test文档(2)→执行合并操作→查看test文档(3)

(1):

(2):

(3):

成功。

7、删除test分支

git branch -d test

 

三、编辑master分支下的内容并上传

用vi编辑器编辑test1.txt文档。

提交时报错:

增加参数a即可,如图:

上传时报错:

原因是因为远程仓库中有的文件,在本地的HEAD区没有,因此上传时会报错。

使用以下指令: 

git pull --rebase origin master

上传成功:

四、解决冲突

1、创建新分支b1

2、在b1下编辑readme文件,如下。

3、add,commit提交。

4、切换回master分支,编辑readme文件,如下:

5、add,commit提交。

6、冲突解决

此时,master分支和b1分支各自有一个提交,如果合并,则会提示冲突。

7、尝试合并

git merge b1

提示冲突,无法合并:

可以用git status指令查看冲突:

8、编辑readme

用vi编辑器进入README.txt文件,发现其内容如下:

git用<<<<<<< , ======= , >>>>>>> 标记出不同分支的内容,将其修改为如下后再保存:

9、add,commit提交。

 10、用log指令查看日志

11、删除b1分支

五、多位小组成员共同编辑同一个文件

1、创建2个文件夹,java1和java2。

分别在两个文件夹下执行clone指令。

2、init初始化

3、创建本地分支

git checkout -b new1 origin/new1

代码的含义是:创建并切换到new1分支,并且这个分支是远程仓库 origin 的 new1 分支。

4、远程仓库中已经创建好用于测试的文件。

文件名为ceshi。

初始内容如图:

5、在java1中进行编辑

然后add+commit保存、提交。

再push上传。

 

6、在java2中进行编辑、提交、上传

上传时报错:

因为java2的提交和java1的提交有冲突,因此需要解决冲突。

7、冲突解决

这种情况下的冲突解决办法是:先用pull指令把最新的提交从origin/new1抓取,然后在本地解决冲突,再进行上传。

提示自动合并失败,需要手动解决冲突。

同样的,使用 git status 查看冲突:

手动编辑ceshi文件,

改为如下图所示:

 

add、commit、push

成功

六、保持本地仓库不变,删除并重建同名远程仓库,然后再提交本地修改。

继续使用刚刚的new1分支。

1、删除远程仓库的new1分支。

2、push上传,成功。

3、得出结论:保持本地仓库不变,删除并重建同名远程仓库,然后再提交本地修改时,会重新创建同名仓库,完成上传。

 

java任务

Java学习笔记8_xuxumiao204的博客-CSDN博客

主要是对变量可见性做的有关练习,概念仍然比较模糊。还有几个关于循环的任务。

 

C1任务

C1任务30-1

获取 id 名为 container 的 div 元素,请补全横线处代码
document.________('div. container')

答:获取单个元素,使用querySelector。因此横线处填写querySelector。

C1任务30-2

获取 ul 中的第 2 个 li 元素,请补全横线处数字

答:querySelectorAll方法获取的结果是一个集合,集合的索引从0开始,因此要提取第二个数字,横线处应该填1。

C1任务31-1

删除类名为 disable 的元素,补全横线处代码

 

答:parentNode已经指定了父节点,因此用 removeChild 来完成删除。

C1任务31-2

在 ul 中的最后一个 li 元素后添加一个新的 li 元素,li 元素文字内容为 input 元素的输入值,请补全横线处代码

答:第一空:添加一个新元素,因此要填 createElement 。

第二空:添加新元素至父节点尾部,要使用 appendChild 。

 

学习内容

git指令

git branch -d <分支名>

删除相应分支。

git switch <分支名>

切换到相应分支。

git tag <name>

给分支打上标签。

git tag

查看所有标签。

java

静态、非静态方法中调用变量

  1. 静态方法调用非静态方法,new;
  2. 静态方法调用类中私有的静态变量,如果和传递的参数重名,那么就类名.变量名 = 值;
  3. 非静态方法调用类中的私有静态变量,可以类名.变量名 = 值,this.变量名 = 值,
  4. 非静态方法调调用类中私有变量,用this.变量名= 值;
  5. 静态方法不能调用非静态变量;
  6. 一句话:静态和类名挂钩,非静态和this new有关(此处主语是被用的那一方)

明日计划

1、学java

2、试用一下git fetch命令

3、尝试两个成员共同编辑一个文档,并解决冲突

4、看老师安排 

 

...全文
731 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

110

社区成员

发帖
与我相关
我的任务
社区描述
训练、训练、训练!
其他 其他
社区管理员
  • 实训001
  • 非鱼up
  • andy421
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

自律训练,自信挑战!

试试用AI创作助手写篇文章吧