ホームページ  >  記事  >  開発ツール  >  Linux および Windows での git の基本操作を完全にマスターする

Linux および Windows での git の基本操作を完全にマスターする

WBOY
WBOY転載
2022-03-10 18:07:461836ブラウズ

この記事では、Git に関する関連知識を提供し、主に Linux および Windows での git の基本操作を紹介します。

Linux および Windows での git の基本操作を完全にマスターする

推奨学習: 「Git チュートリアル

git 学習ノート - Linux および Windows での Git の基本操作

github ホームページ: https://github.com/Taot-chen

1. Linux環境

1. インストールgit

sudo apt-get install git

2. git アカウント情報を設定します

git config --global user.name "你的git账号用户名"git config --global user.email "你的邮箱"

3. 一定期間内にコードをメモリに保存できるように資格情報ヘルパーを設定します。2 行目はタイムアウトを設定します

git config --global credential.helper cachegit config --global credential.helper 'cache --timeout=3600'

4. SSH キーを取得し、リモート GIT に関連付けます

ssh-keygen -t rsa -C "你的邮箱"# 之后一路回车cd ~/.ssh 
cat id_rsa.pub# 再在Terminal中复制密钥,添加到github的settings的SSH公钥中,完成免密码登录关联
# 验证ssh通信情况,提示连接成功即可ssh -T git@github.com# 其他操作就和为windows的几乎一致

5. 共通コマンドをプッシュします##
git init # 初始化本地仓库git config --list
 # 可以查看你的git配置信息
 # 提交文件到本地仓库git add abc.cppgit commit -m "first commit" //-m 用于指定本次提交的描述信息
 # 提交到repositorygit remote add origin "github仓库ssh地址"	//关联仓库git push origin master #master 是分支名
 # 以后若提交到相同仓库,提交到本地仓库之后,直接git push即可# 克隆项目git clone "项目的ssh地址"

6. プッシュ エラーが報告されたときにキャッシュを増やす

git config http.postBuffer 52428800		//(根据文件大小随便调整)

2.

Windows 環境

1. バージョン管理、バックアップと変更

1) ローカル バージョン管理システム

バージョンを保存するレコードのバージョン変更を区別するためのデータベース内の番号。

2) 集中バージョン管理システム (CVCS)

バージョン リビジョンの保存専用のサーバーを用意し、バージョン レコードを利用して関連レコードを簡単に見つけることができます。

3) 分散バージョン管理システム (DVCS)

クライアントは、ファイル スナップショットの最新バージョンを抽出するだけでなく、どこでもコラボレーションできるように元のコード リポジトリをローカルにミラーリングします。障害が発生した場合は、ミラー化されたローカル ウェアハウスを使用して後で回復できます。

2. Windows での git のインストールと設定

1) インストール

git 公式 Web サイトから対応するバージョンをダウンロードしてインストールし、

Git-> を見つけます。 ; メニュー Git Bash で、コマンド ライン ウィンドウが表示されれば、インストールは成功です。

  • バージョンの表示:

    git --version
2) ユーザー名と電子メールの設定

git config --gobal user.name "your user name"     
# 配置用户名git config --gobal user.email "your email"    
#配置邮箱git config --list     
# 查看所有配置

3. git ファイルと 3 つのステータス作業モード

1) 3 つの状態

    コミット済み: データはローカル データベースに安全に保存されました
  • 修正済み: ファイルは変更されましたが、保存されていませんデータベース
  • #Staging (ステージング): 変更されたファイルの現在のバージョンは、次に送信されるスナップショットに含まれるようにマークされます
2) 3 つの作業領域

    ワークスペース: ローカル プロジェクト ディレクトリ
  • ステージング エリア: 変更されたファイルのスナップショットを取得し、ステージング エリアに追加します
  • git リポジトリ: ワークスペースの隠しディレクトリ
  • 。 git はワークスペースとみなされませんが、git バージョン ライブラリです。
3) git ワークフロー

    ワークスペース内のいくつかのファイルを変更します。
  • 変更されたファイルのスナップショットを取得し、一時記憶域に追加します
  • 更新を送信し、スナップショットを一時記憶域に保存します git リポジトリに永続的に保存されます


  • Pull : git リポジトリ - >ローカル ワークスペース

    送信:ローカル ワークスペース - >一時ストレージ領域 - >git ウェアハウス
4. バージョン ライブラリを作成し、ファイルを送信します。

1) ローカル ウェアハウスを初期化します。

ファイル用の空のリポジトリを使用せずにローカル ウェアハウスを初期化します。


git init
2) 新しいフォルダー git01.txt を作成し、それをステージング領域に追加します。

git add     
# 将文件添加到暂存区git add .   
# 提交当前目录的全部文件git status  
# 查看文件的状态git commit  
# 将暂存区的文件提交到本地仓库git log     
# 查看完整的提交日志信息git diff HEAD --file    
# 查看文件法file历次提交的区别

例:

Git Bash

git init    
# 创建空仓库git add git01.txt   
# 将文件git01.txt添加到缓存区git commit -m '第一次提交'   
#提交文件到本地仓库,单引号内的内容是本次提交的注释,必须要有git status    
# 查看暂存区文件状态git log    
 # 查看完整的提交记录
5. ファイルの変更と送信の変更

ファイルをワークスペースで直接変更し、ステージング領域に追加してローカルに送信できます。倉庫



注: 提出前に一時保管領域に追加する必要があります

1) 一時保管領域でのファイルの提出と撤回

  • 送信: git add/git commit

  • 元に戻す:


    ステージング領域から削除:

    git restore --staged git02.txt   
    # 从暂存区移除文件git02.txtgit reset HEAD git02.txt    
    # 取消关于文件git02.txt上一次的操作
2) バージョンのロールバック

送信レコードの簡易表示:

git log --pretty=oneline
現時点では、HEAD ポインタはデフォルトで最後に送信されたレコードを指します。バージョン ロールバックは、HEAD ポインターがロールバックしたいバージョンです。

git reset --hard HEAD^    
# 回退一个版本git reset --hard HEAD^^   
# 回退两个版本git reset --hard HEAD~n   
# 回退n个版本git reset --hard "版本识别码”   
# 回退或者前进到版本识别码所在的版本git reflog    
# 显示所有的提交记录(包括HEAD指向的版本之后的版本),即可以显示用户的每一次操作的记录
3) ファイルの削除

git ls-files    
# 查看本地仓库的文件目录git rm filename   
# 删除文件filename
# 另一种删除方法:现在工作区删除文件,之后再提交操作即可

6、リモート ウェアハウス

1)github

git clone "项目地址"(github地址)    
# 下载github项目(可以不登陆)

2)SSH ダウンロード (ログインが必要)

# 首先需要在gitbash中生成一个keyssh-keygen -t rsa -C "github邮箱"
# 找到生成的公钥,打开后复制,之后再去github中添加`SSH and GPG keys`
# 验证有没有添加成功ssh -T git@github.com# 出现您以被成功认证即可(即此时已经将ssh绑定了github)
# 下载项目git clone "项目地址" (ssh地址)

3) ローカル プロジェクト (ローカル ウェアハウス) をリモート ウェアハウスにプッシュします。

# 在github新建一个仓库# 将本地项目提交到本地仓库
# 将本地仓库绑定github上面的远程仓库git remote add origin "github仓库地址"
# 将其推到远程仓库的主干上(远程仓库中包含本地仓库的所有提交记录)git push -u origin master
# 以后的更新推送,只需要在本地提交完成之后,直接如下命令git push

7、git ブランチ操作

トランクは、すでにオンラインになっているプロジェクトであり、ブランチはトランクの機能に影響を与えません。ブランチが完成して正しくなったら、それをトランクにマージします。


1) ローカル ブランチ操作

よく使用される基本コマンド

命令 描述
git checkout branch 切换到指定分支
git checkout -b new_branch 新建分支并切换到新建分支
git branch -d branch 删除指定分支
git branch 查看所有分支,并且*标记当前所在分支
git merge branch 合并分支
git branch -m / -M oldbranch newbranch 重命名分支,如果new_branch名字分支已经存在,则需要使用-M强制重命名
  • 切换到指定分支:git checkout branch
  • 新建分支并切换到新建分支:git checkout -b new_branch
  • 删除指定分支:git branch -d branch
  • 查看所有分支,并且*标记当前所在分支:git branch
  • 合并分支:git merge branch
  • 重命名分支,如果new_branch名字分支已经存在,则需要使用-M强制重命名:git branch -m | -M oldbranch newbranch

    注:

    只能在主干分支上来合并分支,不可反过来。(虽然git不会报错,但是这样是不可以的)

    分支所具有的内容,就是创建分支的时候主干所具有的内容。

2)远程分支操作

分支push和pull

相关命令

命令 描述
git branch -a 查看本地与远程分支
git push origin branch_name 推送本地分支到远程
git push origin :remote_branch 删除远程分支(本地分支还保留)
git checkout -b local_branch origin/remote_branch 拉取远程指定分支并在本地创建分支

获取远程分支的最新状态

git fetch

图表的方式显示操作记录

git log --graph --pretty=oneline

3)本地分支冲突解决

# 当分支和主干的同一文件的同一行不同的时候,合并分支就会出现冲突
# 根据具体的需要修改,使之相同即可

4)多人协同操作冲突

# 两个用户对同一个文件的同一行进行了不同的操作
# 解决方法:在推送之期拉一下远程仓库,在本地根据具体的需求解决完冲突之后再推送

9、标签管理

标签操作基本命令git tag

命令 描述
git tag tag_name 新建标签,默认为HEAD
git tag -a tag_name -m ‘xxx’ 添加标签并指定标签描述信息
git tag 查看所有标签
git tag -d tag_name 删除一个本地标签
git push origin tag_name 推送本地标签到远程
git push origin --tags 推送全部未推送过的本地标签到远程
git push origin :refs/tags/tag_name 删除一个远程标签

10、Idea下git基本操作

1)环境集成配置

Configure->Settings->搜索git->在Path to Git executable中添加git的安装路径(一直到git.exe)->test->出现版本号,即表示成功->添加github


File->Other Settings->Setting for New Projects->Git/Git Hub

2)推送项目到远程仓库

项目提交到本地仓库->创建远程仓库->绑定远程仓库->推送到远程仓库

3)分支操作

4)gitignore插件

5)冲突及其解决

推荐学习:《Git学习教程

以上がLinux および Windows での git の基本操作を完全にマスターするの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。