git基本操作


在当前文件夹创建git目录

git init

添加当前文件夹的文件或确认文件修改(未保存)

git add 文件
git add . 

添加该文件夹所有文件

删除当前文件夹的文件(未保存)

git rm 文件

保存并说明

git commit -m "说明"

查看之前的更改

git log

添加密钥

ssh-keygen -t rsa -C "邮箱"

然后将.ssh文件夹里的id_rsa.pub文件内容复制粘贴到GitHub的设置里面

设置本地用户名和邮箱

git config user.name "用户名"
git config user.email "邮箱"

添加远程服务器

git remote add 服务器名字 https://github.com/用户名/Repository名

查看远程服务器列表

git remote -v

删除远程服务器

git remote rm 服务器名字

上传项目到服务器

git push 服务器名字 分支

从服务器下载项目的A分支到本地的B分支

git fetch 服务器名字 A:B

比较A、B两分支

git diff A B

新建/删除/跳转到分支

git branch 分支名
git branch -d 分支名
git checkout 分支名

查看当前的分支

git branch

将B合并到A分支

git merge B A

合并分为以下情况: * 若B是A之前的版本或A是B之前的版本,则合并无效 * 若B和A是同一版本衍生出的两个不同版本(比方说本地克隆了C,并把C改成了B,而网上的C经过PullRequest或其他人的push变成了A,然后把Afetch了下来),此时: * 若B和A修改的是不同文件,或同一文件的不同行,则merge会将两个修改合并(比方说C包括1.txt 2.txt 3.txt,A删除了3.txt变成1.txt 2.txt,B删除了2.txt变成1.txt 3.txt,则B合并到A后A只剩1.txt)。 * 若B和A修改的是同一文件的同一行(实际情况可能不限于这个,反正就是改乱了),merge会失败,并将B和A冲突的文件的内容加上冲突提示标记,你需要手动将这个文件改成你预期的解决冲突后的样子。