git日常使用

cooolr 于 2021-03-16 发布
git add    把文件添加到暂存区
git commit 把暂存区的所有内容提交到当前分支上
git push   把当前分支的修改推送到远程分支
git pull   把远程分支的修改下拉到当前分支
git status 查看当前分支状态
git log    查看当前分支状态提交日志
git diff <文件名> 查看指定文件修改内容
# 用户标识
git config --global user.name cooolr
git config --global user.email i@lr.cool

# 初始化仓库
git init

# 创建测试文件lr.txt
echo 'hello world'> lr.txt

# 添加进暂存区
git add lr.txt

# 提交到仓库
git commit -m "提交"
# 本地关联远程仓库
git remote add origin https://github.com/xxxxx/xxxxx

# 克隆远程仓库
git clone https://github.com/xxxxx/xxxxx

# 推送本地修改到远程仓库
git push origin master

# 本地拉取远程命令
git pull origin master

# 修改远程仓库地址
git remote set-url origin <新的地址>
# SSH keys(使用SSH公钥认证, 推送远程分支无需输入密码)
SSH公钥路径: 
    linux: ~/.ssh/id_rsa.pub
    windows: C:/Users/<用户名>/.ssh/id_rsa.pub
如果没有需要运行命令创建公钥: ssh-keygen

复制id_rsa.pub公钥内容到git账号设置新加SSH keys即可

# HTTP认证(适用http地址的git项目, 推送远程分支无需输入密码)
# 在home目录执行命令,再下拉或推送一次输入密码,往后就无需输入密码了
git config --global credential.helper store
# 撤销单个文件修改
git checkout -- lr.txt

# 撤销所有文件修改
git checkout -- .

# git add 后撤销修改
git restore --staged .
# 查看要回退的版本id
git log

# 回退本地版本
 git reset --hard d4f213fc242e574130dcc2fac2db3bc4df304288

# 回退远程版本[强制推送到远程版本]
git push -f
# 建立分支
git branch <分支名>

# 切换分支
git checkout <分支名>

# 合并分支
git merge master        # 合并master分支到dev
git merge <dev分支名>   # 合并dev分支到master

# 删除分支
git branch -d <分支名>

# 推送分支到远程仓库
git push origin <分支名>

# 删除远程分支
git push origin -d <分支名>

# 本地合并远程分支实例
## 本地新建并切换到远程测试分支
git checkout -b test -f origin/test
## 合并master分支到test分支
git merge master
## 推送本地测试分支到远程测试分支
git push origin test
# 1. 克隆主仓库代码
git clone ssh://192.168.1.100:29418/tnaot_data/algorithm.git

# 2. 添加新的git项目作为远程仓库
git remote add other ssh://liyr@192.168.1.158:29418/algorithm.git

# 3. 拉取新添加的git项目数据
git fetch other

# 4. 将新添加的git项目master分支作为新分支checkout到本地
git checkout -b other other/master

# 5. 切换回主仓库master
git checkout master

# 6. 将新分支合并到主仓库master分支
git merge other --allow-unrelated-histories

# 7. 提交更新并推送到远程分支
git add .
git commit -m "merge other"
git push origin master

利用合并多个git项目的方法,将新项目添加到旧项目的remote地址,再切换到新项目分支,然后删除旧项目remote并且rename新项目remote为origin,即可在旧项目路径运行新项目,无缝切换。

# 1. 把新项目添加到旧项目的remote地址
git remote add new_origin ssh://liyr@192.168.1.158:29418/algorithm.git

# 2. 拉取新项目代码
git fetch new_origin

# 3. 切换到以new_master命名的新项目master分支
git checkout -b new_master -f new_origin/master

# 4. 查看并删除旧项目master分支
git branch -a
git branch -D master

# 5. 重命名new_master分支为master分支
git branch -m new_master master

# 6. 删除旧项目remote
git remote remove origin

# 7. 重命名新项目remote名称为origin
git remote rename new_origin origin

Git-分支的新建与合并

实际项目中如何使用Git做分支管理

git修改分支名称