Git——常用命令

在git的安装路径下面,可以看到git命令的参考文档,地址:
git安装文件夹\mingw64\share\doc\git-doc

  • clear 清屏
  • git clone https://XXXX.git projectname 克隆一个远程仓库到本地当前目录下的projectname文件夹下
  • git pull 拉取当前分支最新代码
  • git status 查看本地文件的状态
  • git add README.md 添加README.md这个文件改动到暂存区
  • git add app/. 添加app这个目录下的所有改动到暂存区
  • git add . 添加所有改动到暂存区
  • git commit -m “提交” 提交暂存区的文件到本地仓库,提交日志信息是“提交”
  • git push origin master 提交修改到远程仓库
  • git stash 将你本地未add,未提交的修改储藏起来,使仓库状态恢复到上一次拉取代码的时候,一般在解决冲突的时候使用
  • git stash pop 在执行完上一步,拉取最新的代码后,执行这个语句可以将本地所做的修改显示出来
  • git log 查看代码提交日志
  • git checkout filename 放弃对某个文件的更改(文件add前适用)
  • git reset HEAD 放弃将改动放到暂存区(改到add前的状态)
  • git diff-files -p app/src/main/res/values/colors.xml 查看colors文件本地(add之前)与最新版本的区别
  • gitk --follow app/src/main/res/values/colors.xml 这个命令很赞,可以视图化看修改内容,可以看到这个文件的全部历史,每一个版本的修改内容。使用–follow只可以查看一个文件的
  • gitk app/src/main/res/values/colors.xml gitk --follow app/src/main/res/values/strings.xml 查看多个文件的历史,使用空格并列在后面
  • gitk 查看全部文件的历史,相当于git网页版的日志,每一个版本的所有修改都在一起
### Windows环境下Git常用命令 #### 初始化仓库 在本地创建一个新的Git仓库可以通过`git init`来完成。这会在当前文件夹下创建一个名为`.git`的子目录,该目录包含了项目所有的元数据和版本历史记录[^3]。 ```bash $ git init ``` #### 配置全局用户名和邮箱 为了跟踪每一次提交的信息,在首次安装配置Git时应设置用户的名称与电子邮件地址: ```bash $ git config --global user.name "Your Name" $ git config --global user.email you@example.com ``` #### 添加文件到暂存区 当有新的或已更改过的文件准备加入下次提交时,需先将其添加至索引(即暂存区域)。对于单个文件可直接指定路径;若要一次性全部新增/变更,则可用`.`表示整个目录下的所有改动项。 ```bash $ git add <file> # 或者 $ git add . ``` #### 查看状态 通过执行此指令能获取关于工作树以及索引的状态概览——哪些文件已被修改但尚未被标记为即将提交?哪些已经被放入了待提交队列? ```bash $ git status ``` #### 提交更新 一旦确认好想要保存的变化之后就可以进行提交操作了。每次提交都应当附带一条描述性的消息以便日后查阅变动原因[^2]。 ```bash $ git commit -m "commit message here" ``` #### 检查差异 如果想知道自上次提交以来具体做了什么改变,或是对比任意两个不同版本之间的区别,那么可以利用`diff`功能来进行审查。 ```bash $ git diff ``` #### 推送分支上的内容给远程库 假设已经有一个远端服务器上存在的存储库,并希望把自己这边最新的进展同步过去的话,就需要用到推送命令。这里特别提到的是针对子模块(subtree)的操作方式简化了跨多个独立项目的协作流程[^1]。 ```bash $ git subtree push --prefix=<path> <remote-repo-name> <branch-name> [--squash] ``` #### 获取最新代码并合并入当前分支 从远程拉取最新的变化并将它们集成进来是最常见的团队合作场景之一。通常情况下会自动尝试快速前进(fast-forward),但如果存在冲突则可能需要手动解决后再继续。 ```bash $ git pull origin master ``` #### 列出所有标签(tag) 有时候除了按时间线性发展的主线外还会有特定里程碑式的发布版次被打上了tag作为永久标识符方便检索定位。 ```bash $ git tag ``` #### 创建新分支用于实验特性开发 每当着手于某项可能会破坏现有稳定环境的功能实现之前最好新开辟一个临时支路出来单独处理以免影响主干进度。 ```bash $ git branch feature_branch_name ``` #### 更改活动中的分支 切换不同的上下文视角去浏览各个阶段的历史快照或者是在多条平行线路间游走调整都是日常工作中不可或缺的能力。 ```bash $ git checkout another_branch_or_tag ``` #### 合并与变基(rebase) 面对来自他人贡献过来的新鲜血液如何优雅接纳而不至于造成混乱局面呢? 这里就涉及到两种主要策略的选择问题... ```bash # Merge approach: $ git merge some_other_branch # Rebase alternative: $ git rebase target_base_branch ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值