git基本流程

01 本地仓库

进入工作目录

git init

开始创建文件,先添加文件,再commit

git add [file name]
git commit -m "[some note]"

查看git状态和日志

git status
git log
git show [commit id]

如果要查看历史文件

git checkout [commit id]

因为git是用brew 安装的,zsh里的提示语言中文英文掺杂,一是不利于google二是对强迫症极不友好。把它改成全英文:

vim ~/.zprofile

添加这几行设置语言

#set git language to English
#alias git='LANG=en_US git'
alias git='LANG=en_GB git'

退出vim,重启zsh即可

图片名称

02远程仓库

本地生成一个ssh key

git config --global user.name "[name]"
git config --global user.email "[email]"

ssh-keygen -t rsa -C "[email]"

eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa

vim ~/.ssh/id_rsa.pub

把id_rsa.pub中内容复制到GitHub的 settings -> SSH key and GPG keys -> New SSH key
git push 仍旧报错

remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.

回到github 创建token密钥:settings -> Developer settings -> personal access tokens -> create new token


GitHub创建一个新的private仓库learning-git

mkdir learning-git
cd learning-git
vim README #写入'The first line':x保存退出
git add README
git commit -m "local add README "

git remote add origin git@github.com: ***** /learning-git.git #GitHub仓库SSH 地址
git push origin master
#输入GitHub账户名
#输入GitHub设置的token

刷新GitHub仓库主页,看到README更新,在网页中添加' The second line',commit
回到本地目录

git pull origin master

看到README添加了一行

在网页添加' The third line', commit
在本地目录添加'The forth line', add, commit

% git pull origin master
fatal: Need to specify how to reconcile divergent branches.

根据hint run

% git config pull.rebase false  # merge
% git pull origin master 
Auto-merging README
CONFLICT (content): Merge conflict in README
Automatic merge failed; fix conflicts and then commit the result.

% cat README 
The first line
The second line
<<<<<<< HEAD
The Forth line
=======
The third line
>>>>>>> 4932bf86b4466b3bb72a189118a3cb250491d48b

提示自动合并问题,vim打开后手动合并删除多余行

git add README
git commit -m "solve merge conflict"
git push origin master
posted @ 2022-06-04 12:40  云胡不喜BCC  阅读(878)  评论(0)    收藏  举报