Git 仓库的初始化

廖雪峰大佬的Git教程

添加ssh key 配置

  • 创建本地 key

    1
    2
    3
    rm -rf ~/.ssh/*
    ssh-keygen -t rsa -b 4096 -C "2415180498@qq.com"
    cat ~/.ssh/id_rsa.pub (获取key)
  • 将获得到的 key 拷贝到 github 。个人设置 => ssh。

  • 验证

    1
    ssh -T git@github.com

    详细教程

新建一个本地 git 仓库

  • 设置 commit 时的签名

    1
    2
    git config --global user.name "XiaoYang"
    git config --global user.email "2415180498@qq.com"

    执行了上面的命令后,会在主目录 home directory 建立一个叫 ~/.gitconfig 的文件,用来存储全局的 git 设置信息。

  • 创建仓库 git init

  • 新建 README.md 并且提交

与远程 github 仓库交互

  • 添加远程仓库服务器

    git remote add <shortname> <url> 添加远程仓库服务器,这里 url 用 ssh 地址

    git remote -v 列出所有的远程仓库服务器

    git push -u <shortname> <branch> 推送到服务器某个分支 。master 表示主干

  • 从远程库克隆 git clone ...

    也做了如上的操作,默认 shortnameorigin

  • 从远程库拉最新版本 git pull

  • 向远程库推送当前的版本 git push

  • 当本地仓库和远程仓库都有文件时,与远程仓库关联的正确姿势

    1
    2
    3
    4
    git remote add origin 远程仓库地址
    git pull origin master --allow-unrelated-histories
    git branch --set-upstream-to=origin/master master
    git push

新建本地仓库并同步远程库案例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
git init
echo "git init"

touch "README.md"
echo "touch README.md"

git add "README.md"
echo "git add README.md"

git commit -m "first commit"
echo "git commit -m first commit"

git remote add origin git@github.com:XiaoYangsCode/XLuaTestProj.git
echo "git remote add origin ssh"

git push -u origin master
echo "git push -u origin master"
echo "complete"

扩展:写批处理 .sh 文件,放在要初始化的文件夹中运行

1
2
chmod +x ./git_init.sh	给权限
./git_init.sh 执行

本地版本管理

  • 状态的查看

    1. 查看有哪些文件做了修改 git status

    2. 查看某一文件中具体做了什么修改 git diff filename

  • 提交流程

    1. 从工作区加入到暂存区 git add filename
    2. 提交所有暂存区的修改到本地版本 git commit -m 'explain...'
  • 撤销修改

    1. 将工作区修改撤销 git checkout -- filename
    2. 将暂存区修改撤销 git reset HAED filename
  • 不在跟踪某个文件

    1. 不删除文件:git rm --cached fileName
    2. 删除文件: git rm -f fileName