a better protobuf file to switch to later
This commit is contained in:
parent
95fcacfde0
commit
b60279b19a
|
@ -1,4 +1,5 @@
|
||||||
go.*
|
go.*
|
||||||
*.swp
|
*.swp
|
||||||
*.patch
|
*.patch
|
||||||
|
*.mbox
|
||||||
*.pb.go
|
*.pb.go
|
||||||
|
|
|
@ -110,7 +110,19 @@ func (pset *Patchset) makePatchSetNew(repo *gitpb.Repo) error {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// maybe better? maybe worse?
|
||||||
|
// git format-patch -o patches --stdout <commit-range> > my-patch.mbox
|
||||||
|
// git format-patch --stdout -5 > my-patch.mbox # last 5 patches
|
||||||
|
// git am < my-patch.mbox
|
||||||
// git format-patch branch1..branch2
|
// git format-patch branch1..branch2
|
||||||
|
// export GIT_COMMITTER_DATE="2024-01-01T12:00:00"
|
||||||
|
// export GIT_AUTHOR_DATE="2024-01-01T12:00:00"
|
||||||
|
// export GIT_COMMITTER_NAME="Your Name"
|
||||||
|
// export GIT_COMMITTER_EMAIL="your.email@example.com"
|
||||||
|
// export GIT_AUTHOR_NAME="Your Name"
|
||||||
|
// export GIT_AUTHOR_EMAIL="your.email@example.com"
|
||||||
|
// git am < patch.mbox
|
||||||
|
|
||||||
cmd := []string{"git", "format-patch", "-o", repoDir, startBranch + ".." + endBranch}
|
cmd := []string{"git", "format-patch", "-o", repoDir, startBranch + ".." + endBranch}
|
||||||
r := repo.Run(cmd)
|
r := repo.Run(cmd)
|
||||||
if r.Error != nil {
|
if r.Error != nil {
|
||||||
|
|
|
@ -0,0 +1,74 @@
|
||||||
|
syntax = "proto3";
|
||||||
|
|
||||||
|
package forgepb;
|
||||||
|
|
||||||
|
import "google/protobuf/timestamp.proto"; // Import the well-known type for Timestamp
|
||||||
|
|
||||||
|
/*
|
||||||
|
message Blob {
|
||||||
|
string hunkLine = 1;
|
||||||
|
bytes data = 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
message File {
|
||||||
|
string filename = 1;
|
||||||
|
string hashLine = 2;
|
||||||
|
repeated Blob Blobs = 3;
|
||||||
|
}
|
||||||
|
|
||||||
|
message Patch {
|
||||||
|
repeated File Files = 1;
|
||||||
|
string repoNamespace = 2;
|
||||||
|
string gH = 3;
|
||||||
|
string gaI = 4;
|
||||||
|
string gcI = 5;
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
// git log -1 --format="%H %aI %cI %an %ae %cn %ce"
|
||||||
|
message Patch {
|
||||||
|
string repoNamespace = 1; // the base repo git URL
|
||||||
|
bytes data = 2; // the raw data of the whole patch
|
||||||
|
string gH = 3; // after some deliberation, I think I'll just try variable names
|
||||||
|
string gT = 4;
|
||||||
|
string gP = 5;
|
||||||
|
string gs = 6;
|
||||||
|
string gaI = 7; // that exactly match what git uses.
|
||||||
|
string gan = 8;
|
||||||
|
string gae = 9;
|
||||||
|
string gcI = 10;
|
||||||
|
string gcn = 11;
|
||||||
|
string gce = 12;
|
||||||
|
string gN = 13;
|
||||||
|
string gGG = 14;
|
||||||
|
string gGS = 15;
|
||||||
|
string gGK = 16;
|
||||||
|
string newHash = 17; // new hash
|
||||||
|
string state = 18; // the 'state' of the patch
|
||||||
|
}
|
||||||
|
|
||||||
|
message Patches { // this is a "PATCH: [1/x]" series
|
||||||
|
string uuid = 1; // `autogenpb:uuid:be926ad9-1111-484c-adf2-d96eeabf3079` // todo: add autogenpb support for this
|
||||||
|
string version = 2; // `autogenpb:version:v0.0.45` // todo: add autogenpb support for this
|
||||||
|
repeated Patch Patches = 3;
|
||||||
|
}
|
||||||
|
|
||||||
|
message Patchset { // `autogenpb:marshal`
|
||||||
|
Patches patches = 1; //
|
||||||
|
string name = 2; // `autogenpb:sort`
|
||||||
|
string comment = 3; //
|
||||||
|
string gitAuthorName = 4; // `autogenpb:sort`
|
||||||
|
string gitAuthorEmail = 5; //
|
||||||
|
google.protobuf.Timestamp ctime = 6; // create time of the patchset
|
||||||
|
string tmpDir = 7; // temp dir
|
||||||
|
string startBranchName = 8; //
|
||||||
|
string endBranchName = 9; //
|
||||||
|
string startBranchHash = 10; //
|
||||||
|
string endBranchHash = 11; //
|
||||||
|
}
|
||||||
|
|
||||||
|
message Patchsets { // `autogenpb:marshal`
|
||||||
|
string uuid = 1; // `autogenpb:uuid:be926ad9-f07f-484c-adf2-d96eeabf3079` // todo: add autogenpb support for this
|
||||||
|
string version = 2; // `autogenpb:version:v0.0.45` // todo: add autogenpb support for this
|
||||||
|
repeated Patchset Patchsets = 3;
|
||||||
|
}
|
Loading…
Reference in New Issue