Skip to content

Git

Screenshot 2023-07-20 at 00.21.22

Screenshot 2023-07-20 at 00.21.49

Second version:

Screenshot 2023-07-20 at 00.24.41

Screenshot 2023-07-20 at 00.28.44

Screenshot 2023-07-20 at 00.28.33

Screenshot 2023-07-20 at 00.29.38

Screenshot 2023-07-20 at 00.30.41

Screenshot 2023-07-20 at 00.30.58

For some file I want git ignore.

Screenshot 2023-07-20 at 00.38.10

Screenshot 2023-07-20 at 00.39.22

Screenshot 2023-07-20 at 00.39.15

We can create .gitignore file to create a list which will ignore the file. If the .gitignore exit the file and it untracked file then git will not do any check to the file.

.gitignore

# it will mathc all the files with txt
*.txt

# Although above will ignore all the txt file, except this one
!666.txt

# also can ignore a folder, and all the things inside ignore
test/

# all catalog with txt, but not including subcatalog
xxx/*.txt

# all catalog with txt, including subcatalog
xxx/**/*.txt

Screenshot 2023-07-20 at 00.57.11

Screenshot 2023-07-20 at 00.57.00

If want to go back to history version

Screenshot 2023-07-20 at 01.00.02

Screenshot 2023-07-20 at 01.00.48

Screenshot 2023-07-20 at 01.02.03

Screenshot 2023-07-20 at 01.01.52

Screenshot 2023-07-20 at 01.04.06

Screenshot 2023-07-20 at 01.04.28

Screenshot 2023-07-20 at 11.10.34

git commit -a

新创建的文件不行, 后续修改的时候才行

Screenshot 2023-07-20 at 11.30.46

分支

Screenshot 2023-07-20 at 12.31.01

Screenshot 2023-07-20 at 12.30.46

Screenshot 2023-07-20 at 12.32.09

Screenshot 2023-07-20 at 12.31.54

Screenshot 2023-07-20 at 12.32.57

Screenshot 2023-07-20 at 12.34.52

Screenshot 2023-07-20 at 12.34.43

删除分支

git branch -d yyds

Screenshot 2023-07-20 at 12.36.15

Screenshot 2023-07-20 at 12.36.09

Screenshot 2023-07-20 at 12.37.22

Screenshot 2023-07-20 at 12.38.38

Screenshot 2023-07-20 at 12.39.36

Screenshot 2023-07-20 at 12.40.44

Screenshot 2023-07-20 at 12.51.47

Screenshot 2023-07-20 at 12.51.35

合并

Screenshot 2023-07-20 at 14.09.09

不知道要合并哪儿个.

Screenshot 2023-07-20 at 15.27.05

Screenshot 2023-07-20 at 15.26.48

Screenshot 2023-07-20 at 15.28.59

想要两个都保留

Screenshot 2023-07-20 at 15.30.03

Screenshot 2023-07-20 at 15.29.48

Screenshot 2023-07-20 at 15.31.44

Screenshot 2023-07-20 at 15.33.53

Screenshot 2023-07-20 at 15.35.09

Screenshot 2023-07-20 at 15.38.49

变基分支

除了直接合并分支以外, 我们还可以进行变基操作, 它跟合并不同, 合并是分支回到主干的过程, 而变基是直接修改分支开始的位置, 比如希望将test变基到master上, 那么test会将分支起点移动到master最后一次提交位置:

Screenshot 2023-07-20 at 18.57.42

Screenshot 2023-07-20 at 18.57.33

变基后, test分支相当于同步了此前master分支的全部提交

优选

我们还可以选择其他分支上的提交作用于当前分支上, 这种操作成为cherrypick:

git cherry-pick <commit id>: 单独合并一个提交

Screenshot 2023-07-20 at 19.14.52

Screenshot 2023-07-20 at 19.16.00

Screenshot 2023-07-20 at 19.19.08

Screenshot 2023-07-20 at 19.19.16

使用IDEA版本控制

Screenshot 2023-07-20 at 19.29.50

Screenshot 2023-07-20 at 19.30.51

Screenshot 2023-07-20 at 19.32.51

Screenshot 2023-07-20 at 19.33.28

Screenshot 2023-07-20 at 19.34.40

Screenshot 2023-07-20 at 19.35.00

Screenshot 2023-07-20 at 19.35.51

Screenshot 2023-07-20 at 19.36.08

绿色文件 新建文件

蓝色表示修改

新建个文件 修改个文件

Screenshot 2023-07-20 at 19.38.56

Screenshot 2023-07-20 at 19.41.25

Screenshot 2023-07-20 at 19.41.54

Screenshot 2023-07-20 at 19.42.37

If I want to go back,

Screenshot 2023-07-20 at 19.43.12

Screenshot 2023-07-20 at 19.44.31

Screenshot 2023-07-20 at 19.44.40

Screenshot 2023-07-20 at 19.45.44

Screenshot 2023-07-20 at 19.45.29

create new branch

Screenshot 2023-07-20 at 19.46.24

Screenshot 2023-07-20 at 19.47.08

Screenshot 2023-07-20 at 19.47.52

Screenshot 2023-07-20 at 19.48.45

Screenshot 2023-07-20 at 19.49.20

Screenshot 2023-07-20 at 19.51.25

Screenshot 2023-07-20 at 20.50.21

Screenshot 2023-07-20 at 20.50.33

Screenshot 2023-07-20 at 20.52.52

Screenshot 2023-07-20 at 20.55.12

Screenshot 2023-07-20 at 20.56.28

Screenshot 2023-07-20 at 20.56.42

Screenshot 2023-07-20 at 20.57.54

Screenshot 2023-07-20 at 20.58.24

Screenshot 2023-07-20 at 20.58.35

Github

Screenshot 2023-07-21 at 02.17.01

Screenshot 2023-07-21 at 10.31.35

可以将远端和本地的分支进行绑定, 绑定后就不需要制定分支名称了:

Screenshot 2023-07-21 at 11.32.38

Screenshot 2023-07-21 at 12.03.54

Screenshot 2023-07-21 at 12.04.52

Clone Project

Screenshot 2023-07-21 at 12.07.57

Screenshot 2023-07-21 at 12.08.37

抓取, 拉取和冲突解决

team work

A

Screenshot 2023-07-21 at 12.29.36

B

Screenshot 2023-07-21 at 12.31.52

Screenshot 2023-07-21 at 12.29.27

B

Screenshot 2023-07-21 at 12.33.14

Screenshot 2023-07-21 at 12.35.10

Screenshot 2023-07-21 at 12.34.56

A don't know.

Screenshot 2023-07-21 at 13.10.29

B 推送了不同步

git fetch

Screenshot 2023-07-21 at 13.12.27

Screenshot 2023-07-21 at 13.12.19

Screenshot 2023-07-21 at 13.13.39

Screenshot 2023-07-21 at 13.15.36

Screenshot 2023-07-21 at 13.15.45

Screenshot 2023-07-21 at 13.16.32

git fetch: 抓取: 只获取但不合并远端分支, 后续需要手动合并才能提交

git pull: 拉取 获取 合并

Screenshot 2023-07-21 at 13.20.39

A:

Screenshot 2023-07-21 at 13.31.20

Screenshot 2023-07-21 at 13.32.11

Screenshot 2023-07-21 at 13.32.26

IDEA

Screenshot 2023-07-21 at 13.42.24

Screenshot 2023-07-21 at 14.30.30

Screenshot 2023-07-21 at 14.31.04

Screenshot 2023-07-21 at 14.31.18

Screenshot 2023-07-21 at 14.32.00

Screenshot 2023-07-21 at 14.33.23

Screenshot 2023-07-21 at 14.33.46

Screenshot 2023-07-21 at 15.30.25

Screenshot 2023-07-21 at 15.32.21

Screenshot 2023-07-21 at 15.32.35

Screenshot 2023-07-21 at 15.32.54

Screenshot 2023-07-21 at 15.33.04

另一个同学要加入

Screenshot 2023-07-21 at 15.33.56

Screenshot 2023-07-21 at 15.42.15

Screenshot 2023-07-21 at 15.42.57

Bugs

Screenshot 2023-07-21 at 16.18.14

https://stackoverflow.com/questions/6887228/git-hangs-while-writing-objects